基于云服务器ECS,快速部署Docker环境
创始人
2024-09-25 10:47:16
0

部署Docker

  1. 远程连接ECS实例。

      关于连接方式的介绍,请参见连接方式概述。

  1. 安装Docker。

     2.1 运行以下命令,下载docker-ce的yum源。  

sudo wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

     2.2 运行以下命令,安装Docker。

sudo yum -y install docker-ce
  1. 执行以下命令,检查Docker是否安装成功。

sudo docker -v

     如下图回显信息所示,表示Docker已安装成功。

  1. 执行以下命令,启动Docker服务,并设置开机自启动。

sudo systemctl start docker sudo systemctl enable docker
  1. 执行以下命令,查看Docker是否启动。

sudo systemctl status docker

    如下图回显所示,表示Docker已启动。

Docker基本用法

下文只列出Docker基本用法,更详细的操作命令,请参见Docker官网。

  1. 管理Docker守护进程

sudo systemctl start docker     #运行Docker守护进程 sudo systemctl stop docker      #停止Docker守护进程 sudo systemctl restart docker   #重启Docker守护进程 sudo systemctl enable docker    #设置Docker开机自启动 sudo systemctl status docker    #查看Docker的运行状态
  1. 管理镜像

     本文以阿里云仓库的Apache镜像为例,介绍如何使用Docker管理镜像。

     2.1 拉取镜像

sudo docker pull registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5

     2.2 修改标签。如果镜像名称较长,您可以修改镜像标签以便记忆区分。

sudo docker tag registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5:latest aliweb:v1

     2.3 查看已有镜像。

sudo docker images

     2.4 强制删除镜像。

sudo docker rmi -f registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5
  1. 管理容器

     下文的<镜像ID>可通过docker images命令查询。

     3.1 启动一个新容器。

sudo docker run -it <镜像ID> /bin/bash

     3.2 启动一个新的容器,让容器在后台运行,并且指定容器的名称。

sudo docker run -d --name <容器名> <镜像ID>

     3.3 查看容器ID。

sudo docker ps

     3.4 将容器做成镜像。

sudo docker commit <容器ID或容器名> <仓库名>:<标签>

 

使用Docker制作镜像

本步骤指导如何通过Dockerfile定制制作一个简单的Nginx镜像。

  1. 执行以下命令,拉取镜像。本示例以拉取阿里云仓库的Apache镜像为例。

sudo docker pull registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5
  1. 修改镜像名称标签,便于记忆。

sudo docker tag registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5:latest aliweb:v1
  1. 执行以下命令,新建并编辑Dockerfile文件。

     3.1 执行以下命令,新建并编辑Dockerfile文件。

vim Dockerfile

     3.2 按i进入编辑模式,并添加以下内容,改造原镜像。

#声明基础镜像来源。 FROM aliweb:v1 #声明镜像拥有者。 MAINTAINER DTSTACK #RUN后面接容器运行前需要执行的命令,由于Dockerfile文件不能超过127行,因此当命令较多时建议写到脚本中执行。 RUN mkdir /dtstact #开机启动命令,此处最后一个命令需要是可在前台持续执行的命令,否则容器后台运行时会因为命令执行完而退出。 ENTRYPOINT ping www.aliyun.com

     3.3 按Esc键,输入:wq并按Enter键,保存并退出Dockerfile文件。

  1. 执行以下命令,基于基础镜像nginx构建新镜像。

     命令格式为docker build -t <镜像名称>:<镜像版本> .,命令末尾的.表示Dockerfile文件的路径,不能忽略。以构建新镜像aliweb:v2为例,则命令为:

sudo docker build -t aliweb:v2 .
  1. 执行以下命令,查看新镜像是否构建成功。

sudo docker images 

     如下图回显所示,表示构建成功。

安装并使用docker-compose

docker-compose是Docker官方提供的用于定义和运行多个Docker容器的开源容器编排工具,可以使用YAML文件来配置应用程序需要的所有服务,然后使用docker-compose运行命令解析YAML文件配置,创建并启动配置文件中的所有Docker服务,具有运维成本低、部署效率高等优势。

关于docker-compose的更多信息,请参见Docker官网。

     重要:仅Python 3及以上版本支持docker-compose,并请确保已安装pip。

安装docker-compose

  1. 运行以下命令,安装setuptools。

pip3 install -U pip setuptools
  1. 运行以下命令,安装docker-compose。

pip3 install docker-compose
  1. 运行以下命令,验证docker-compose是否安装成功。

docker-compose --version

     如果回显返回docker-compose版本信息,表示docker-compose已安装成功。

使用docker-compose部署应用

下文以部署WordPress为例,介绍如何使用docker-compose部署应用。

  1. 创建并编辑docker-compose.yaml文件。

     1.1 运行以下命令,创建docker-compose.yaml文件。

vim docker-compose.yaml

     1.2 按下i键,进入编辑模式,新增以下内容。

         本示例以安装WordPress为例。

version: '3.1'             # 版本信息  services:    wordpress:               # 服务名称              image: wordpress       # 镜像名称     restart: always        # docker启动,当前容器必启动     ports:       - 80:80              # 映射端口     environment:           # 编写环境       WORDPRESS_DB_HOST: db       WORDPRESS_DB_USER: wordpress       WORDPRESS_DB_PASSWORD: 123456       WORDPRESS_DB_NAME: wordpress     volumes:               # 映射数据卷       - wordpress:/var/www/html    db:                      # 服务名称         image: mysql:5.7       # 镜像名称     restart: always        # docker启动,当前容器必启动     ports:        - 3306:3306         # 映射端口     environment:           # 环境变量       MYSQL_DATABASE: wordpress       MYSQL_USER: wordpress       MYSQL_PASSWORD: 123456       MYSQL_RANDOM_ROOT_PASSWORD: '1'     volumes:               # 卷挂载路径       - db:/var/lib/mysql  volumes:   wordpress:   db:

     1.3 按下Esc键,退出编辑模式,然后输入:wq保存并退出。

  1. 执行以下命令,启动应用。

sudo env "PATH=$PATH" docker-compose up -d
  1. 在浏览器中输入http://云服务器ECS实例的公网IP,即可进入WordPress配置页面,您可以根据界面提示配置相关参数后,访问WordPress。

创建环境副本(可选)

Docker环境搭建完成后,您可以将配置环境通过自定义镜像制作成环境副本保存下来。

说明:使用快照服务会产生少量费用。

相关内容

热门资讯

此事备受玩家关注!新超圣辅助透... 此事备受玩家关注!新超圣辅助透视挂,建德麻将存在有挂,一贯有挂细节运新超圣辅助工具,进入游戏界面。进...
今天上午!熊猫麻将辅助透视挂,... 今天上午!熊猫麻将辅助透视挂,大唐撸麻雀确实有挂,确实有挂透视1、下载好大唐撸麻雀正确养号方法之后点...
突发!小吆三打哈辅助透视挂,悠... 突发!小吆三打哈辅助透视挂,悠闲麻将真的是有挂,原来有挂解密一、小吆三打哈游戏安装教程牌型概率发牌机...
今年以来!樱花梦雨辅助透视挂,... 今年以来!樱花梦雨辅助透视挂,新滕州麻将真的是有挂,好像有挂方法今年以来!樱花梦雨辅助透视挂,新滕州...
备受关注的!边锋老友棋牌辅助透... 备受关注的!边锋老友棋牌辅助透视挂,微友麻将是真的有挂,一直有挂攻略运边锋老友棋牌辅助工具,进入游戏...
明白辅助挂!萍乡滚筒辅助透视挂... 明白辅助挂!萍乡滚筒辅助透视挂,大唐麻将游戏是有挂,一直有挂教程1、操作简单,无需大唐麻将游戏手机版...
据报道!丫丫古诗辅助透视挂,琼... 据报道!丫丫古诗辅助透视挂,琼崖海南麻将真的有挂,其实有挂方法丫丫古诗脚本下载中分为三种模型:丫丫古...
随着!多多休闲辅助透视挂,东游... 随着!多多休闲辅助透视挂,东游麻将是真的有挂,竟然有挂存在随着!多多休闲辅助透视挂,东游麻将是真的有...
方法辅助挂!星禾游戏辅助透视挂... 方法辅助挂!星禾游戏辅助透视挂,太浪乾安麻将是真的有挂,果然发现有挂1、下载好星禾游戏脚本下载之后点...
近日!巅峰互娱辅助透视挂,趣咪... 近日!巅峰互娱辅助透视挂,趣咪麻将确实有挂,真是揭秘有挂;1、这是跨平台的巅峰互娱轻量版有透视,在线...