背景

双十一在阿里云购买了个人入门ECS进行试玩,计划搭建Docker环境,官方已有部署步骤帮助,此处仅作为补充拓展,知其然亦要知其所以然😛工具也要玩明白

登录云服务器

  1. 找到ECS实例,重置密码并重启。
  2. 终端登录
    1. ssh -v
    2. ssh root@[ipaddress]

    安装Docker CE

    ```shell

    安装Docker依赖库

    yum install -y yum-utils device-mapper-persistent-data lvm2

添加Docker CE软件源信息

yum-config-manager —add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

【可选】启用nightly或test库

yum-config-manager —enable docker-ce-nightly yum-config-manager —enable docker-ce-test yum-config-manager —disable docker-ce-nightly yum-config-manager —disable docker-ce-test

安装Docker CE

yum makecache yum -y install docker-ce docker-ce-cli containerd.io

启动Docker服务

systemctl start docker

配置阿里云镜像仓库,加速

mkdir -p /etc/docker tee /etc/docker/daemon.json <<-‘EOF’ { “registry-mirrors”: [“https://***.mirror.aliyuncs.com“] } EOF

重新加载服务配置文件

systemctl daemon-reload

重启Docker服务

systemctl restart docker

<a name="gFMvE"></a>
# 安装Nginx
```shell
# 查看可用的Nginx版本
docker search nginx

# 拉取最新的Nginx镜像
docker pull nginx:latest

# 查看本地镜像
docker images

# 运行容器
docker run --name [nginx-container-name] -p 8080:80 -d nginx

注意,此时启动容器后,通过外网访问http://[ipaddress]:8080/ 无法打开页面,排查逻辑如下:

  1. 本机curl 127.0.0.1:8080,如果正常访问代表本地服务无误,不能正常访问可通过docker ps查看本地docker进程情况,可采用重试等策略
  2. 外网主机ping [ipaddress],能够ping通说明服务器可访问,否则检查路由配置
  3. 检查阿里云安全组(虚拟防火墙)是否开放端口
  4. 检查防火墙firewall是否启用,是否开放端口