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