基于 docker 安装 nginx 详细教程

1. 创建普通用户用于管理 docker

在本教程中我们创建一个普通用户来进行后续的docker相关服务的配置与运维。当然本操作是非必须的,你可以直接使用root用户来直接操作,对整个流程没有影响。不想创建用户请直接跳过第一部分,从第二部分开始操作即可。

创建普通用户 lidy

useradd lidy
设置普通用户 lidy 的密码
passwd lidy

创建 docker 文件夹,用于存放 docker 相关的数据

cd /home
mkdir docker_data
创建 docker 文件夹
chmod -R 777 docker_data
将普通用户提权
visudo
添加以下内容
## Grant administrator privileges
lidy    ALL=(ALL)       NOPASSWD:ALL

2. 安装 docker 容器

通过 yum 命令卸载旧版本的 docker,未安装可跳过这步
yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine \
                  docker-ce
安装相关依赖包,才能正确安装docker。其中 yum-util 提供 yum-config-manager 功能,其他的 提供devicemapper驱动依赖
yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
默认源为国外,下载可能会出现很慢或者下载失败的情况。尽量将源换为国内源。这里我选用的是 阿里仓库
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
开始安装docker服务
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
启动 docker 容器
systemctl start docker
其他命令,可以配合部署的时候使用
# 启动docker服务
systemctl start docker
# 停止docker服务
systemctl stop docker
# 重启docker服务
systemctl restart docker

3. docker中安装 nginx

创建nginx中数据存放文件夹
cd /home/docker_data
mkdir nginx
在 docker 中安装 nginx
# 拉取 nginx 镜像
docker pull nginx
# 启动 nginx
docker run --restart=always --name=nginx -p 80:80 -d nginx
复制容器的的配置文件到宿主机器 (配置文件映射)
docker cp nginx:/etc/nginx /home/docker_data/nginx/conf
docker cp nginx:/usr/share/nginx/html /home/docker_data/nginx/html
docker cp nginx:/var/log/nginx /home/docker_data/nginx/logs
删除nginx容器,并通过复制出的配置文件启动
# 停止 docker 容器
docker stop nginx
# 删除 docker 容器
docker rm -f nginx
以复制出的配置文件启动
docker run --restart=always --name=nginx -p 80:80 \
 -v /home/docker_data/nginx/conf:/etc/nginx \
 -v /home/docker_data/nginx/html:/usr/share/nginx/html \
 -v /home/docker_data/nginx/logs:/var/log/nginx \
 -d nginx
查看是否部署成功
 
posted @ 2024-01-29 21:46  李东阳  阅读(514)  评论(0编辑  收藏  举报