docker工人你好世界

我试图让我的应用程序dockerize,因为我一直在官方openresty dockerfile 。 在我的系统中的操作系统是Ubuntu 16.04 64位。

我已经使用这个CMD拉图像。

docker pull openresty/openresty:1.11.2.3-xenial 

现在我想使用这个图像,并希望使简单的Hello World应用程序。 为此,我创build了我的工作目录,创build一个自定义的dockerfile,并用它来构build我的自定义图像。 最后我运行这个图像。 以下是我的dockerfile内容。

 FROM openresty/openresty:1.11.2.3-xenial EXPOSE 8080 CMD nginx -p `pwd` -c nginx.conf 

nginx.conf

 worker_processes 1; error_log stderr notice; events { worker_connections 1024; } http { include /usr/local/openresty/nginx/conf/mime.types; server { listen 8888; location / { default_type text/html; content_by_lua_file "app.lua"; } } } 

app.lua

 ngx.say('Hello World!') ngx.exit(200) 

build立图像

docker build -t user/openresty .

启动容器

 docker run rahul/openresty 

当我尝试启动容器时,它给了我一个错误,如nginx:无效的选项:“/ bin / sh”

我不知道我要走对错的方向。

更新:

 docker run -it -p 8888:80 -v /home/software/docker/openresty:/usr/local/openresty/nginx/html:ro openresty/openresty:1.11.2.3-xenial 

我只是使用这个CLI,它开始显示我创build的index.html。 再次尝试使用下面的CLI链接我的自定义nginx.conf,但它不工作。

 docker run -it -p 8888:8888 -v /home/software/docker/openresty:/usr/local/openresty/nginx/html:ro -v /home/software/docker/openresty/nginx.conf:/usr/local/openresty/nginx/conf/nginx.conf:ro openresty/openresty:1.11.2.3-xenial 

docker run -it -p 8888:8888 -v $(pwd):/ app openresty / openresty:1.11.2.3-xenial -p / app -c nginx.conf

下面的命令开始工作,但任何人都可以请解释一下吗?

 docker run -it -p 8888:8888 -v $(pwd):/app openresty/openresty:1.11.2.3-xenial -p /app -c nginx.conf