docker具体安装,详情见我的另一篇博客,这里就不说了。
拉取官方的镜像:
# docker pull nginx:1.10.1
先在当前根目录创建文件夹: mkdir conf
然后将自己配置好的nginx.conf配置文件拷贝到conf文件夹中
运行容器:
# docker run -p 80:80 --name nginx -v $PWD/www:/www -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/logs:/wwwlogs -d nginx:1.10.1
命令说明:
-p 80:80:将容器的80端口映射到主机的80端口
–name nginx:将容器命名为nginx
-v $PWD/www:/www:将主机中当前目录下的www挂载到容器的/www
-v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf:将主机中当前目录下的nginx.conf挂载到容器的/etc/nginx/nginx.conf
-v $PWD/logs:/wwwlogs:将主机中当前目录下的logs挂载到容器的/wwwlogs
-d 守护进程启动nginx
查看容器启动情况
b7cc27c3909a nginx:1.10.1 "nginx -g 'daemon off" 5 seconds ago Up 4 seconds 0.0.0.0:80->80/tcp, 443/tcp
在宿主机上,编辑配置文件:
# cd /mnt/conf/nginx.conf
修改默认网站根目录,容器中默认是:/etc/nginx/html/
将此目录修改为宿主机和nginx容器共享的/www/目录
将其中的
location / {
root html;
index index.html index.htm;
}
改为
location / {
root /www/html;
index index.html index.htm;
}
宿主机中: /mnt/www/html 目录放网站代码即可映射到nginx容器的 www/html 目录
此时,访问:
http://ip
就能打开网站。
附:
docker容器是个伪终端,很多基础命令都没有,需要自己安装:
比如要安装 vim 命令
首先执行:
# apt-get update
这个命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包
等更新完毕以后,再执行:
# apt-get install vim
完成