@@ -41,7 +41,7 @@ defmodule Makina.Models.DockerTest do
4141 assert cmd . server == server
4242
4343 assert cmd . cmd ==
44- "docker run -d --restart always --name foo --label org.makina.app.hash=#{ app . __hash__ } nginx:1.16"
44+ "docker run -d --restart unless-stopped --name foo --label org.makina.app.hash=#{ app . __hash__ } nginx:1.16"
4545 end
4646
4747 test "contains volumes" do
@@ -57,7 +57,7 @@ defmodule Makina.Models.DockerTest do
5757 cmd = Docker . run ( server , app )
5858
5959 assert cmd . cmd ==
60- "docker run -d --restart always --name foo --label org.makina.app.hash=#{ app . __hash__ } --volume foo:/app/data nginx:1.16"
60+ "docker run -d --restart unless-stopped --name foo --label org.makina.app.hash=#{ app . __hash__ } --volume foo:/app/data nginx:1.16"
6161 end
6262
6363 test "contains environment variables" do
@@ -73,36 +73,52 @@ defmodule Makina.Models.DockerTest do
7373 cmd = Docker . run ( server , app )
7474
7575 assert cmd . cmd ==
76- "docker run -d --restart always --name foo --label org.makina.app.hash=#{ app . __hash__ } --env ENV=prod nginx:1.16"
76+ "docker run -d --restart unless-stopped --name foo --label org.makina.app.hash=#{ app . __hash__ } --env ENV=prod nginx:1.16"
7777 end
78- end
7978
80- test "contains command arguments" do
81- server =
82- Server . new ( host: "example.com" )
83- |> Server . put_private ( :conn_ref , self ( ) )
84-
85- app =
86- Application . new ( name: "foo" )
87- |> Application . set_docker_image ( name: "traefik" , tag: "v3.3" )
88- |> Application . put_volume (
89- source: "/var/run/docker.sock" ,
90- destination: "/var/run/docker.sock"
91- )
92-
93- app =
94- app
95- |> Application . set_private ( :__docker__ , % {
96- app . __docker__
97- | command: [
98- "--api.insecure=true" ,
99- "--providers.docker"
100- ]
101- } )
102-
103- cmd = Docker . run ( server , app )
104-
105- assert cmd . cmd ==
106- "docker run -d --restart always --name foo --label org.makina.app.hash=#{ app . __hash__ } --volume /var/run/docker.sock:/var/run/docker.sock traefik:v3.3 --api.insecure=true --providers.docker"
79+ test "contains command arguments" do
80+ server =
81+ Server . new ( host: "example.com" )
82+ |> Server . put_private ( :conn_ref , self ( ) )
83+
84+ app =
85+ Application . new ( name: "foo" )
86+ |> Application . set_docker_image ( name: "traefik" , tag: "v3.3" )
87+ |> Application . put_volume (
88+ source: "/var/run/docker.sock" ,
89+ destination: "/var/run/docker.sock"
90+ )
91+
92+ app =
93+ app
94+ |> Application . set_private ( :__docker__ , % {
95+ app . __docker__
96+ | command: [
97+ "--api.insecure=true" ,
98+ "--providers.docker"
99+ ]
100+ } )
101+
102+ cmd = Docker . run ( server , app )
103+
104+ assert cmd . cmd ==
105+ "docker run -d --restart unless-stopped --name foo --label org.makina.app.hash=#{ app . __hash__ } --volume /var/run/docker.sock:/var/run/docker.sock traefik:v3.3 --api.insecure=true --providers.docker"
106+ end
107+
108+ test "contains exposed ports" do
109+ server =
110+ Server . new ( host: "example.com" )
111+ |> Server . put_private ( :conn_ref , self ( ) )
112+
113+ app =
114+ Application . new ( name: "foo" )
115+ |> Application . set_docker_image ( name: "nginx" , tag: "1.16" )
116+ |> Application . put_exposed_port ( internal: 80 , external: 80 )
117+
118+ cmd = Docker . run ( server , app )
119+
120+ assert cmd . cmd ==
121+ "docker run -d --restart unless-stopped --name foo --label org.makina.app.hash=#{ app . __hash__ } --port 80:80 nginx:1.16"
122+ end
107123 end
108124end
0 commit comments