【Docker系列】如何部署Docker并进行小优化(内含一键安装脚本)

简介: 【Docker系列】如何部署Docker并进行小优化(内含一键安装脚本)

一、docker安装步骤详解


docker初期版本是1.13(同一版本,开源)——>分类型 1.15 - 1.17 过程中分成两种。


①开源社区 docker-ce


②企业版 docker-ee

今天我们学习安装的是开源版


以下是整体操作


目前 Docker 只能支持 64 位系统。
1.#关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
2.#安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2 
--------------------------------------------------------------------------------
#yum-utils:提供了 yum-config-manager 工具。
#device mapper: 是Linux内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。
#device mapper存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
--------------------------------------------------------------------------------
3.#设置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 
4.#安装 Docker-CE 社区版并设置为开机自动启动
yum install -y docker-ce
systemctl start docker.service
systemctl enable docker.service 
5.#查看 docker 版本信息
docker version


1.1关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
## 关闭防火墙和增强机制


1.2安装依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2 
--------------------------------------------------------------------------------
#yum-utils:提供了 yum-config-manager 工具。
#device mapper: 是Linux内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。
#device mapper存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
--------------------------------------------------------------------------------

1.3设置阿里云镜像源

cd /etc/ yum.repos.d/ ##切换路径到yum源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
## 添加安装路径


1.4安装 Docker-CE并设置为开机自动启动

yum install -y docker-ce
 ##安装社区版
systemctl start docker.service
systemctl enable docker.service
##开启Docker服务并设置开机自启




1.5查看 docker 版本信息

docker version

二、设置镜像加速(优化)

可以设也可以不设到这里基本上Docker就已经安装完毕了

申请加速器地址


这里我们使用阿里云的镜像,加速镜像下载速度

注册阿里云账号并登录










三、网络优化

vim /etc/sysctl.conf
net.ipv4.ip_forward=1  #开启路由转发
sysctl -p   #刷新
systemctl restart network ##重启网卡
systemctl restart docker ##重启docker

为什么要开启路由转发功能?


开启路由转发 是让docker0能根据虚拟机ip为自己所有的docker容器分配虚拟ip



四、docker-server端配置文件建议配置

#在daemon. json文件中配置
{
  "graph":"/data/docker",   #数据目录,数据存储位置
  "storage-driver":"overlay2",  #存储引擎,docker1.18以上版本默认使用overlay2存储引擎。早期的适合存储引擎使用的aufs
  "insecure-registries":["registry.access.redhat.com","quary.io"],  #私有仓库
  #"registry-mirrors": [ "https:/lq" ]  #镜像加速,在这个下面添加
  "bip":"172.137.20.1/24",    #docker网络
  "exec-opts":["native.cgroupdriver=systemd"],  #启动时的额外参数,(是一种挂载驱动,k8s使用)
  "live-restore":true #当docker容器引擎挂掉的时候,使用docker跑起来的容器还能继续运行
}
以上是建议的配置项
docker的网络建议和宿主机的IP"对照"
比如宿主机10.2.5.6 容器的地址就可以修改为172.5.6.1,这样方便在故障发生时,更容易定位故障节点的位置
systemctl daemon-reload  #重载守护进程
systemctl restart docker #重载引擎
{
  "graph":"/data/docker",
  "storage-driver":"overlay2",
  "insecure-registries":["registry.access.redhat.com","quary.io"],
  "bip":"172.137.20.1/24",
  "exec-opts":["native.cgroupdriver=systemd"],
  "live-restore":true
}
systemctl daemon-reload
systemctl restart docker


五、总结

本章主要是学习如何安装docker以及进行一些简单的优化


六、 一键安装 docker 的 shell 脚本 _

6.1创建 shell 脚本

touch install_docker.sh

chmod 777 install_docker.sh


6.2一键安装 docker 的 shell 脚本

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
echo -e " =========== 1.delete exist docker ================\n\n"
echo -e "step 1: 安装必要的一些系统工具"
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
echo -e "\n\nStep 2: 添加软件源信息,国内 Repository 更加稳定"
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
version=sudo cat /etc/redhat-release|sed -r 's/.* ([0-9]+)\..*/\1/'
if $version=7; then
        echo  -e "\n\nStep 3: 更新 Centos version is : $version; run yum makecache fast"
        sudo yum makecache fast
elif $version=8; then
        echo -e "\n\nStep 3: 更新Centos version is : $version; run yum makecache fast"
        sudo dnf makecache
fi
echo -e "=========== 2.完成配置 docker Repository ================\n\n"
# 安装最新版本的 Docker Engine 和 Container
sudo yum install docker-ce docker-ce-cli containerd.io
sudo yum -y install docker-ce
echo -e "=========== 3.成功安装完 docker ================\n\n"
sudo systemctl enable docker
sudo systemctl start docker
echo -e "=========== 4.自启动 docker ================\n\n"
# 1.创建一个目录
sudo mkdir -p /etc/docker
# 2.编写配置文件
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://reg-mirror.qiniu.com",
    "http://f1361db2.m.daocloud.io"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
echo -e "=========== 5.配置国内镜像加速 ================\n\n"
docker ps -a



现在常用 centos 7、8,所以仅适配这两个系统安装 docker,自己实操过暂时没有问题

希望有大神可以迷津指点


相关文章
|
3天前
|
消息中间件 监控 RocketMQ
Docker部署RocketMQ5.2.0集群
本文详细介绍了如何使用Docker和Docker Compose部署RocketMQ 5.2.0集群。通过创建配置文件、启动集群和验证容器状态,您可以快速搭建起一个RocketMQ集群环境。希望本文能够帮助您更好地理解和应用RocketMQ,提高消息中间件的部署和管理效率。
140 91
|
4天前
|
存储 NoSQL Redis
Docker 部署 Redis
在使用 Docker 部署 Redis 时,为实现数据持久化,需正确挂载容器内的数据目录到宿主机。推荐命令如下: ``` docker run -d --name redis -v /mnt/data/redis:/data -p 6379:6379 redis ``` 该命令将宿主机的 `/mnt/data/redis` 目录挂载到容器的 `/data` 目录,确保 Redis 数据持久化。此路径更通用,适合大多数场景。避免使用不匹配的挂载路径,如 `/var/lib/redis` 或 `/mnt/data/redis` 到非默认目录,以防止数据无法正确持久化。
|
11天前
|
JavaScript 前端开发 Docker
如何通过pm2以cluster模式多进程部署next.js(包括docker下的部署)
通过这些步骤,可以确保您的Next.js应用在多核服务器上高效运行,并且在Docker环境中实现高效的容器化管理。
71 44
|
10天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
81 42
|
3天前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
51 20
|
4天前
|
Ubuntu API 网络虚拟化
ubuntu22 编译安装docker,和docker容器方式安装 deepseek
本脚本适用于Ubuntu 22.04,主要功能包括编译安装Docker和安装DeepSeek模型。首先通过Apt源配置安装Docker,确保网络稳定(建议使用VPN)。接着下载并配置Docker二进制文件,创建Docker用户组并设置守护进程。随后拉取Debian 12镜像,安装系统必备工具,配置Ollama模型管理器,并最终部署和运行DeepSeek模型,提供API接口进行交互测试。
90 15
|
2天前
|
消息中间件 Kafka Docker
docker compose 安装 kafka
通过本文的步骤,您可以快速在本地使用 Docker Compose 安装并配置 Kafka 和 Zookeeper。Docker Compose 简化了多容器应用的管理,方便快速搭建和测试分布式系统。
26 2
|
Docker 容器
如何使用Docker构建运行时间较长的脚本
本文讲的是如何使用Docker构建运行时间较长的脚本,【编者的话】在工作中,可能会碰到一些会运行很长时间的脚本,这些脚本构建起来会非常麻烦,可能在构建一半后突然失败,我们又得重头再来。文章介绍了如何使用Docker解决这类问题。
1019 0
|
1月前
|
数据库 Docker 容器
docker容器为啥会开机自启动
通过配置适当的重启策略,Docker容器可以在主机系统重启后自动启动。这对于保持关键服务的高可用性和自动恢复能力非常有用。选择适合的重启策略(如 `always`或 `unless-stopped`),可以确保应用程序在各种情况下保持运行。理解并配置这些策略是确保Docker容器化应用可靠性的关键。
223 93