容器化技术与容器服务

本次实验在VMWare虚拟机+Ubuntu20.04环境下完成。

准备docker环境

安装

  1. 配置docker的apt源

    $ sudo apt-get update
    $ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common

  2. 添加 Docker 的官方 GPG 密钥:
    1

  3. 将 Docker 的源添加到 /etc/apt/sources.list

    $ sudo add-apt-repository \ “deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable”

  4. 更新包索引,安装最新版本的Docker 引擎和容器

    $ sudo apt-get update
    $ sudo apt-get install docker-ce docker-ce-cli containerd.io

检查docker安装

结果如下图,证明已成功安装docker。
2

运行第一个容器

3

Docker 基本操作

  1. 运行镜像
    在这一步如果直接运行下述命令会导致下载速度十分缓慢。

    docker run -it ubuntu bash

    因此,参考博客重新配置了拉取的docker镜像仓库,配置后执行命令速度有显著提升。具体结果如下:
    4

  2. 显示本地镜像库内容
    5

  3. 显示运行中容器
    6

  4. 显示所有容器
    7

  5. 继续运行原容器并进入
    8

MySQL与容器化

拉取 MySQL 镜像

  1. 拉取 MySQL 镜像
    9
  2. 显示本地镜像库内容
    10
    由结果可见,已成功拉取 MySQL 镜像。

构建docker镜像练习

  1. 创建dockerfile
    11
  2. 录入dockerfile
    12
  3. 构建镜像
    13
  4. 运行镜像
    14

使用MySQL容器

  1. 启动服务器
    15
  2. 启动 MySQL 客户端
    16

使用MySQL容器(挂载卷保存db)

  1. 数据库文件的位置
    17
  2. Dockerfile 的 VOLUME /var/lib/mysql 的含义
    18
    每次启动 mysql 容器,docker 创建一个文件卷挂载在容器内/var/lib/mysql位置。这个卷在主机(host)的 /var/lib/docker/volumes/ 目录下。
  3. 创建卷并挂载
    19
    将自己定义的数据卷挂载在 /var/lib/mysql下。
    20
  4. 启动客户端容器链接服务器
    21
    22

Docker compose 与多容器应用自动化部署

  1. 下载:docker-compose(容器编排的原型)
    23
  2. 创建并编写:stack.yml
    24
    25
  3. 启动服务
    26
    27

Docker网络

管理容器网络

28

备制支持 ifconfig 和 ping 命令的 ubuntu 容器

29

$ apt-get install net-tools
$ apt-get install iputils-ping -y

30
31

启动另一个命令窗口,由容器制作镜像,并创建自定义网络

32

Docker 仓库(Registry)

  1. 访问 https://cr.console.aliyun.com,用淘宝注册一个账号,选择“容器镜像服务”。
  2. 完成上传 hello-world 镜像操作
    33
    查看仓库结果如下,可以看出上传成功。
    34

容器监控与日志

检查docker的状态

命令如下:

$ docker info
$ docker info --format {{.ServerVersion}}

结果如下:
35
(输出较长未全部截图)
36

查看容器内进程

命令如下:

$ docker top mysql2
$ docker stats mysql2

结果如下:
37

容器详细信息

命令如下:

$ docker inspect mysql2
$ docker inspect -f ‘{{.NetworkSettings.IPAddress}}’ d098beec6b02

结果如下:
38
39

容器日志查看

命令如下:

$ docker logs d098beec6b02
$ docker logs --tail 2 d098beec6b02

结果如下:
40
41

docker图形化管理工具

单节点运行
42
43

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值