华为云HECS云服务器docker环境下安装nginx

前提:有一台华为云服务器。

华为云HECS云服务器,安装docker环境,查看如下文章。

华为云HECS安装docker-CSDN博客

一、拉取镜像

下载最新版Nginx镜像 (其实此命令就等同于 : docker pull nginx:latest )

bash 复制代码
docker pull nginx

查看镜像

bash 复制代码
docker images

二、宿主机创建挂载目录

执行如下命令:

bash 复制代码
mkdir -p /usr/local/nginx/conf
mkdir -p /usr/local/nginx/log
mkdir -p /usr/local/nginx/html

mkdir的-p参数,有文件夹则略过,没有则创建。

三、 生成容器

执行命令:

bash 复制代码
docker run -p 80:80 --name nginx -d nginx

四、 复制文件

1、确认文件地址

1.1进入容器内部

复制代码
docker exec -it nginx /bin/bash 

1.2找到nginx.conf所在的地址(找到相关配置文件)

复制代码
find / -name nginx.conf

这里以/etc/nginx/nginx.conf为例,其他类似

1.3退出容器

复制代码
exit

2、复制文件

//将容器文件复制到宿主机

bash 复制代码
docker cp nginx:/etc/nginx/nginx.conf /usr/local/nginx/conf
docker cp nginx:/etc/nginx/conf.d/ /usr/local/nginx/conf
docker cp nginx:/usr/share/nginx/html/ /usr/local/nginx
docker cp nginx:/var/log/nginx /usr/local/nginx/log

五、关闭容器

bash 复制代码
docker stop nginx

六、删除容器

bash 复制代码
docker rm nginx

七、 以挂载的方式启动容器

命令如下:

bash 复制代码
docker run -p 80:80 \
--name nginx \
-v /usr/local/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /usr/local/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /usr/local/nginx/log:/var/log/nginx \
-v /usr/local/nginx/html:/usr/share/nginx/html \
--restart=always \
--privileged=true \
-d nginx

参数解析:

【-p 80:80】 将宿主机80端口与容器内80端口进行映射;

【--name】 给容器命名;

【-v】 将宿主机目录或文件与容器内目录或文件进行挂载映射;

【 --restart=always】 开机启动,失败也会一直重启;

【--privileged=true】获取宿主机root权限。

【-d】表示后台启动;

八、HECS安全组开端口

九、访问nginx

有nginx标识,证明访问成功。

相关推荐
CHANG_THE_WORLD13 小时前
12.总结:深入理解 Linux I/O 多路复用:select、poll、epoll 全解析
linux·运维·服务器
风曦Kisaki14 小时前
# Linux笔记:操作系统优化与资源管理
linux·运维·服务器·笔记
关关长语15 小时前
Wsl解决MySQL容器跨域权限问题
mysql·docker·容器
初願致夕霞16 小时前
C++懒汉单例设计详解
服务器·开发语言·c++
啊哦11117 小时前
安装VMware Workstation
linux·运维·服务器
持敬chijing18 小时前
Linux基础命令与目录命令
linux·运维·服务器
IT小辉同学18 小时前
# Milvus v3.0-beta docker-compose 启动失败完整排错教程
docker·eureka·milvus
小张成长计划..18 小时前
【Linux】12:进程状态
linux·运维·服务器
农村小镇哥19 小时前
C#中的字符串格式化
服务器·开发语言·c#
名字还没想好☜1 天前
Nginx 反向代理与负载均衡配置实战
运维·nginx·负载均衡