如何部署Docker CentOS?

Docker

1 基础知识

CentOS Linux是社区支持的发行版
CentOS Linux源于Red Hat免费提供给公众使用的Red Hat Enterprise Linux(RHEL)
CentOS Linux旨在与RHEL在功能上兼容
CentOS Linux主要更改软件包以删除上游供应商的品牌和插图
CentOS Linux是免费的,可以免费重新分发
CentOS Linux每个版本最多可维护10年(随Red Hat发布源的安全更新支持间隔时间不同而不同)
CentOS Linux大约每2年发布一次新的版本
CentOS Linux每个版本都会定期更新(大约每6个月更新一次)以支持更新的硬件
CentOS Linux由此可知是一个安全、低维护、可靠、可预测和可复制的Linux环境

2 最佳实践

2.1 部署Docker集群

如果你尚未部署Docker集群环境,请参阅如下章节部署,

如何部署Docker生产环境?

2.2 部署前的准备

In docker01

cd /data/docker/images/
docker load -i centos_centos7.3.1611.tar
docker tag centos:centos7.3.1611 docker01.cmdschool.org:5000/centos:centos7.3.1611
docker push docker01.cmdschool.org:5000/centos:centos7.3.1611
docker image rm centos:centos7.3.1611

另外,安装包的离线下载请在能上网的docker环境的机器上使用如下命令,

docker pull centos:centos7.3.1611
docker save centos:centos7.3.1611 -o centos_centos7.3.1611.tar

另外,其他版本请从以下链接下载,
https://hub.docker.com/_/centos

2.2 部署centos

In docker01

2.2.1 创建服务配置文件

vim /data/docker/yml/centos-stack.yml

加入如下配置,

version: '3.8'

services:

  centos73:
    image: docker01.cmdschool.org:5000/centos:centos7.3.1611
    volumes:
      - /data/docker/service/centos7.3.1611:/data

    command: /usr/sbin/init
    environment:
      TZ: Asia/Shanghai
    deploy:
      replicas: 1
      placement:
        constraints: [node.labels.centos7.3.1611 == true]
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
        max-file: "5"

根据配置需求创建数据存放目录,
In docker02

mkdir -p /data/docker/service/centos7.3.1611

根据配置的需求设置运行标记,
In docker01

docker node update --label-add centos7.3.1611=true docker02.cmdschool.org

2.2.2 部署服务

docker stack deploy -c /data/docker/yml/centos-stack.yml centos73

2.2.3 配置安全认证

In docker02

docker exec -it `docker container ls | grep 'centos7.3' | cut -d" " -f1 ` bash

参阅文档
=====================

官方参阅
————
https://hub.docker.com/_/centos

文件兼容性参考
————–
https://docs.docker.com/compose/compose-file/

没有评论

发表回复

Docker
如何修复连接Docker容器虚机无响应?

1 前言 一个问题,一篇文章,一出故事。 笔者最近使用如下命令连接容器发现一直没有响应, docke …

Docker
如何打包Docker Nginx?

1 前言 一个问题,一篇文章,一出故事。 由于docker hub原版本的nginx镜像过于精简,于 …

Docker
如何打包Docker MAC-Telnet?

1 基础知识 一款可以使用MikroTik RouterOS MAC-Telnet协议连接Mikro …