docker run -d --name nginx -p 8080:80 nginx:1.23.1
Docker 官方镜像 nginx 目录说明
1、相关的 nginx 配置文件都在 /etc/nginx 目录下
2、nginx 容器内的默认首页 html 文件目录为 /usr/share/nginx/html
3、日志文件位于 /var/log/nginx
进入容器内部,获取容器内部用户 id
docker exec -it nginx /bin/bash cat /etc/group | grep nginx cat /etc/passwd |grep nginx
从这里我们可以知道 nginx 容器内的 nginx 用户 id 为 101
mkdir -p /data/nginx/{html,logs,nginx} mkdir -p /data/nginx/nginx/conf.d touch /data/nginx/logs/access.log touch /data/nginx/logs/error.log docker cp nginx:/etc/nginx/conf.d /data/nginx/nginx docker cp nginx:/etc/nginx/nginx.conf /data/nginx/nginx/nginx.conf docker cp nginx:/usr/share/nginx/html /data/nginx docker stop nginx docker rm nginx
ls -l /data/nginx/nginx ls -l /data/nginx/html ls -l /data/nginx/logs
cat /data/nginx/nginx/nginx.conf
可以看到配置文件中默认是以 nginx 用户启动的
给 nginx 目录授权
ls -l /data/nginx/ chown -R 101:101 /data/nginx chmod -R 755 /data/nginx/ ls -l /data/nginx/
docker run --name nginx -m 200m -p 8080:80 \ -v /data/nginx/nginx/conf.d:/etc/nginx/conf.d \ -v /data/nginx/nginx/nginx.conf:/etc/nginx/nginx.conf \ -v /data/nginx/logs:/var/log/nginx \ -v /data/nginx/html:/usr/share/nginx/html \ -e TZ="Asia/Shanghai" \ -d nginx:1.23.1
参数说明
-name 给你启动的容器起个名字,以后可以使用这个名字启动或者停止容器
-p 映射端口,将docker宿主机的80端口和容器的80端口进行绑定
-v 挂载文件用的,
-m 200m 分配内存空间
-e TZ=Asia/Shanghai 设置时区
docker ps -a docker logs -f nginx
netstat -tulnp|grep 8080 curl -v http://192.168.100.115:8080