安装nginx并启动只需一步操作,但是进行相关配置需要进入到容器中。
#d:daemon p映射端口宿主机:容器
docker -d -p 80:80 nginx
#查看docker容器进程
docker ps
#交互进入容器 cid为容器id
docker exec -it cid bash
修改相关文件需要进进出出容器还是比较麻烦的,docker可以通过宿主机和容器进行映射,类似-p端口映射操作,可以将容器内文件挂载mount到宿主机本地。这里通过--name对容器进行命名,对配置文件,日志路径,及html文件目录进行挂载。
docker run --name nginx -d -p 80:80 \
-v /app/docker_nginx/log:/var/log/nginx \
-v /app/docker_nginx/conf:/etc/nginx/conf.d \
-v /app/docker_nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /app/docker_nginx/html:/usr/share/nginx/html \
nginx
在本地创建相关目录及文件夹,注意容器中相关文件的目录,html文件夹的目录是/usr/share/nginx/html。配置文件可以先copy下容器里的配置文件,注意copy下conf.d目录下的default.conf文件。
可以在宿主机和容器之间copy文件,类似虚拟机和虚拟机之间的scp,也可以直接在宿主机通过交互向容器发送信号。
docker cp ngixn:/etc/nginx/nginx.conf /nginx/nginx.conf
docker exec -i nginx nginx -s reload