docker 使用案例:部署nginx
首先安装docker。可以参考这篇教程:
http://www.runoob.com/docker/windows-docker-install.html
本教程以windows10+ubuntu:16.04作为环境。
docker安装完成后首先powershell运行以下命令
docker run -p 8100:80 --name web -it ubuntu:16.04
-p 8100:80 表示将容器(可以理解为虚拟机)的80端口映射到主机的8100端口上,访问主机的8100端口就像相当于访问容器的80端口。
-it表示开启命令行。
--name web 表示将运行的ubuntu命名为web。
进入ubuntu的命令行后先运行:
apt-get update
更新完毕后安装vim和nginx:
apt-get install vim
apt-get install nginx
完毕后vim打开nginx配置文件(默认/etc/nginx/sites-enabled/default),确认网站根目录(默认 /var/www/html)
完成后在网站根目录新建index.html,内容为
<h1>hello</h1>
命令行运行nginx,这时主机用浏览器访问127.0.0.1:8100即可看到结果。
停止容器:使用docker ps 命令获得容器id,然后执行 docker stop 容器id
提交容器更新:docker commit 容器id 新容器名
以后想继续使用则运行新的容器。如果不提交就退出将不会保存任何修改。
让镜像在后台运行:
docker run -p 8100:80 -d ubuntu:16.04 nginx -g "daemon off;"
容器必须要有一个前台进程,不然会被杀死。 -g "daemon off; 的作用就是让nginx在前台运行。