Docker配置

Docker 版本
– 社区版
– 企业版
• 与 Kubernetes 集成(在Linux版本号很重要呢!)
– 社区版 17.03.2 ce
• CentOS(虚拟机)安装 docker
– 官方指南
• https://docs.docker.com/install/linux/docker-ce/centos/#installdocker-ce
– 中文指南
• http://www.cnblogs.com/freefei/p/9263998.html
• 如果你不是root用户
– 请将用户加入 docker 用户组

安装Docker

使用存储库

在首次安装 Docker 引擎之前,您需要设置 Docker 存储库。之后,可以从存储库安装和更新 Docker。

设置存储库

  1. 更新包索引和安装包以允许通过 HTTPS 使用存储库:
$ sudo apt-get update

$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
  1. 添加 Docker 的官方 GPG 密钥:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

安装Docker引擎和容器

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

检查安装:

$ docker version

验证Docker引擎是否安装正确

 $ sudo docker run hello-world

Docker基本操作

  • 运行镜像
  • 显示本地镜像库内容
  • 获得帮助:
  • 显示运行中容器
  • 显示所有容器
  • 继续运行原容器并进入

MySQL与容器化

拉取MySQL镜像

构建Docker镜像练习

录入以下内容:

FROM ubuntu
ENTRYPOINT ["top", "-b"]
CMD ["-c"]

构建镜像

运行镜像

  • 使用MySQL容器
    启动服务器

启动MySQL客户端

  • 挂载卷保存db
    查看数据库文件所在地址


  • 创建并挂载


  • 启动客户端容器链接服务器
  • 挂载现有数据库
    官网案例:
docker run -v "$PWD/data":/var/lib/mysql --user 1000:1000 --name
some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag


  • 修改容器配置
docker run --name some-mysql -v /my/custom:/etc/mysql/conf.d -e
MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

  • Docker compose 与多容器应用自动化部署
    下载:docker-compose(容器编排的原型)
    编写:stack.yml
    启动服务

编写stack.yml:

version: '3.1'
services:
db:
image: mysql:5.7
command: --default-authentication-plugin=mysql_native_password
restart: always
environment:
MYSQL_ROOT_PASSWORD: example
adminer:
image: adminer
restart: always
ports:
- 8080:8080

启动服务

docker-compose -f stack.yml up

Docker网络

  • 管理容器网络
  • 备制支持 ifconfig 和 ping 命令的 ubuntu 容器
ping   //可以ping通

  • 启动另一个命令窗口,由容器制作镜像
  • 创建自定义网络
  • 在两个窗口创建 u1,u2 容器网络,并使用以下命令
docker run --name u1 -it -p 8080:80 --net mynet --rm ubuntu:net bash
docker run --name u2 --net mynet -it --rm ubuntu:net bash
docker inspect u1
docker network connect bridge u1
docker network disconnect mynet u1

你可能感兴趣的:(Docker配置)