您当前的位置:首页 > 电脑百科 > 程序开发 > 容器

Linux安装Docker、K8s(环境准备和Docker安装)

时间:2022-06-24 09:36:49  来源:  作者:1Dev

1. 环境准备

1.1 在windows上使用VMware规划三linux系统,且能互相通信。推荐配置如下:

 

 

CPU

2core

master

192.168.xxx.xxx

内存

2G

 

 

硬盘

20G

 

 

CPU

2core

node01

192.168.xxx.xxx

内存

1G

 

 

硬盘

20G

 

 

CPU

2core

node02

192.168.xxx.xxx

内存

1G

 

 

硬盘

20G

1.2 地址改为静态IP地址

将准备的虚拟地址改为如上的静态IP,方便后续迁移不会导致IP等信息的变更。

  1. 首先通过ip a 查看ip地址
  2. 修改配置文件

配置文件/etc/sysconfig.NETwork-scripts/ifcfg-ens33中,配置的IP地址是dhcp是动态地址,只要改成static,设置一个固定的ip。

vi /etc/sysconfig/network-scripts/ifcfg-ens33
Linux安装Docker、K8s(环境准备和Docker安装)

 

修改内容主要是将原来的dhcp改为static、IPaddr改为自己规划的环境地址、DNS1和GATEWAY也需要同步修改为自己的路由地址。

1.3 重启

重启操作系统:reboot
重启网网卡:service network restart

1.4 hostname设置

# 根据规划设置主机名

hostnamectl set-hostname <hostname>
Linux安装Docker、K8s(环境准备和Docker安装)

 

1.5 hosts设置

在master节点修改/etc/hosts,设置hosts。hosts的内容应该包含集群内的所有机器几点信息。如:

Linux安装Docker、K8s(环境准备和Docker安装)

 

然后将此文件从master节点scp在集群内的其他节点。

1.6 关闭防火墙

# 关闭防火墙

systemctl stop firewalld

# 关闭防火墙开机启动

systemctl disable firewalld

1.7 关闭selinux

临时关闭:输入命令setenforce 0。但重启系统后还是会开启。

永久关闭:输入命令vi /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出。

1.8 关闭swap

# 临时

swapoff -a

# 永久

sed -ri 's/.*swap.*/#&/' /etc/fstab

1.9 同步时间

Linux安装Docker、K8s(环境准备和Docker安装)

 

其中Local time:当地时间;Universal time:国际协调时间;RTC time:硬件时间。

  • 修改时区为北京时间
timedatectl set-timezone Asia/ShanghAI
  • 安装NTP服务
yum install -y ntp

修改ntp配置vi /etc/sysconfig/ntpd

Linux安装Docker、K8s(环境准备和Docker安装)

 

  • 启动ntp服务
systemctl restart ntpd
systemctl enable ntpd #开机启动NTP
timedatectl set-ntp true # linux系统和ntp时钟同步

1.10 iptables的链

# 将桥接的IPv4流量传递到iptables的链

cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system # 生效

2 安装Docker

下载地址:https://download.docker.com/linux/static/stable/x86_64/docker-20.10.7.tgz。

2.1 解压二进制包

tar zxvf docker-20.10.7.tgz
mv docker/* /usr/bin

2.2 systemd管理docker

cat > /usr/lib/systemd/system/docker.service << EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF

2.3 创建配置文件

mkdir /etc/docker
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],
"exec-opts":["native.cgroupdriver=systemd"]
}
EOF

2.4 docker的/var/lib/docker目录迁移

  1. 停止docker服务
systemctl stop docker
  1. 创建新的docker目录
mkdir -p /home/dockerlib
  1. 迁移/var/lib/docker
rsync -avz /var/lib/docker /home/dockerlib

2.4.1 修改配置路径

  • 方法1:通过建立软连接,把/var/lib/docker 移动到其他地方,建立到这里的软连接ln -s /home/dockerlib /var/lib/docker
  • 方法2:修改默认配置文件/etc/docker/daemon.json
    {“registry-mirrors”: [“http://hub-mirror.c.163.com”],“graph”:"/home/docker/lib"}
  • 方法3:修改docker的systemd的 docker.service的配置文件不知道 配置文件在哪里可以使用systemd 命令显示一下.systemctl disable docker
    systemctl enable docker#显示结果Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.打开 docker.service文件.vim /usr/lib/systemd/system/docker.service在里面的EXECStart的后面增加后如下ExecStart=/usr/bin/dockerd --graph /home/docker/lib
  • 方法:4:fstab挂载vim /etc/fstab
    最后一行添加/home/docker/lib /var/lib/docker none bind 0 0

2.4.2 重新加载 docker systemctl restart docker

systemctl daemon-reload
systemctl restart docker
systemctl enable docker

2.4.3 删除 /var/lib/docker

rm -rf /var/lib/docker

2.5 启动并设置开机启动

systemctl daemon-reload
systemctl start docker
systemctl enable docker


Tags:Docker   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Docker 和传统虚拟机有什么区别?
我有一个程序员朋友,他每年情人节都要送女朋友一台服务器。他说:“谁不想在过节当天收到一台 4核8g 的服务器呢?”“万一对方不要,我还能留着自己用。” 给他一次过节的机会,他能...【详细内容】
2024-03-26  Search: Docker  点击:(15)  评论:(0)  加入收藏
掌握Docker网络驱动程序:优化容器通信
Docker为在容器内包装、交付和运行应用程序提供了一个强大的平台,从而彻底改变了容器化。网络是容器化的重要组成部分,Docker提供了各种网络驱动程序来支持容器之间的通信以...【详细内容】
2024-03-22  Search: Docker  点击:(13)  评论:(0)  加入收藏
如何基于Docker镜像逆向生成Dockerfile
引言你是否曾经遇到过一个想要使用的 Docker 镜像,但却无法修改以适应你的特定需求?或者你可能发现了一个喜欢的 Docker 镜像,但想要了解它是如何构建的?在这两种情况下,将 Docke...【详细内容】
2024-03-07  Search: Docker  点击:(26)  评论:(0)  加入收藏
Docker与Docker Compose入门:释放你应用部署的威力
今天给大家介绍一项强大而有趣的技能,那就是使用 Docker 和 Docker Compose 来释放你的应用部署的威力!无论你是一名开发人员还是系统管理员,掌握这个技能都将为你的工作带来巨...【详细内容】
2024-01-17  Search: Docker  点击:(69)  评论:(0)  加入收藏
Docker镜像与容器的交互及在容器内部执行代码的原理与实践
Docker作为一种流行的容器技术,已经成为现代应用程序开发和部署的重要工具。在Docker中,镜像是构建和运行容器的基础,而容器则是基于镜像创建的可执行实例。Docker镜像与容器的...【详细内容】
2024-01-10  Search: Docker  点击:(83)  评论:(0)  加入收藏
如何在 Ubuntu 上安装 Docker
使用 Docker 意味着开启一个新的计算领域,但如果你刚刚开始使用 Docker,安装可能看起来是一项艰巨的任务。在 Ubuntu 上安装 Docker 有两种推荐的方法: 从 Ubuntu 的仓库安装 D...【详细内容】
2024-01-04  Search: Docker  点击:(127)  评论:(0)  加入收藏
七个杀手级Docker命令
Docker是一个容器化平台,通过操作系统级别的虚拟化技术,实现软件的打包和容器化运行。借助Docker,开发人员能够将应用程序以容器的形式进行部署,但在此之前需要构建Docker镜像。...【详细内容】
2023-12-22  Search: Docker  点击:(153)  评论:(0)  加入收藏
Docker容器如何打包应用程序的代码和依赖项?
Docker容器通过将应用程序的代码和所有依赖项打包到一个独立的软件包中,实现了应用程序的快速部署和移植。下面是Docker容器实现这一目标的步骤:打包应用程序:使用Docker工具将...【详细内容】
2023-12-20  Search: Docker  点击:(133)  评论:(0)  加入收藏
DBA视角:把数据库放入Docker是一个馊主意
对于无状态的应用服务而言,容器是一个相当完美的开发运维解决方案。然而对于带持久状态的服务 &mdash;&mdash; 数据库来说,事情就没有那么简单了。生产环境的数据库是否应当放...【详细内容】
2023-12-18  Search: Docker  点击:(201)  评论:(0)  加入收藏
Docker容器编排技术解析
一、容器编排介绍容器编排是现代云原生应用管理的核心,它涉及在大规模的环境中自动化部署、管理、扩展和网络配置容器。随着微服务架构的兴起和应用的复杂性增加,容器编排成为...【详细内容】
2023-12-15  Search: Docker  点击:(262)  评论:(0)  加入收藏
▌简易百科推荐
Docker 和传统虚拟机有什么区别?
我有一个程序员朋友,他每年情人节都要送女朋友一台服务器。他说:“谁不想在过节当天收到一台 4核8g 的服务器呢?”“万一对方不要,我还能留着自己用。” 给他一次过节的机会,他能...【详细内容】
2024-03-26  小白debug  微信公众号  Tags:Docker   点击:(15)  评论:(0)  加入收藏
掌握Docker网络驱动程序:优化容器通信
Docker为在容器内包装、交付和运行应用程序提供了一个强大的平台,从而彻底改变了容器化。网络是容器化的重要组成部分,Docker提供了各种网络驱动程序来支持容器之间的通信以...【详细内容】
2024-03-22    51CTO  Tags:Docker   点击:(13)  评论:(0)  加入收藏
Containerd容器管理
Nginx 指定容器名称 使用 ctr container create 命令创建容器后,容器并没有处于运行状态,其只是一个静态的容器。容器基本操作容器基本操作主要是 ctr image 命令,查看命令帮...【详细内容】
2024-03-20  云原生运维圈  微信公众号  Tags:容器   点击:(15)  评论:(0)  加入收藏
如何基于Docker镜像逆向生成Dockerfile
引言你是否曾经遇到过一个想要使用的 Docker 镜像,但却无法修改以适应你的特定需求?或者你可能发现了一个喜欢的 Docker 镜像,但想要了解它是如何构建的?在这两种情况下,将 Docke...【详细内容】
2024-03-07  云原生运维圈  微信公众号  Tags:Docker   点击:(26)  评论:(0)  加入收藏
Kubernetes是什么?主要特点是什么?
Kubernetes是什么?Kubernetes,也称为K8s,是一个开源的容器编排系统,由Google首次开发和维护。它允许容器化的应用程序在集群中自动部署、扩展和管理。Kubernetes提供了一种容器...【详细内容】
2024-02-01    简易百科  Tags:Kubernetes   点击:(177)  评论:(0)  加入收藏
我们一起聊聊容器资源自愈
在企业实际在使用容器这类资源的时候,除了技术本身,要考虑的其他问题也会很多。企业管理的容器有千千万万,出于效率考虑,对于有特殊需求的容器如何进行批量创建和管理呢,这就需要...【详细内容】
2024-01-30  匠心独运维妙维效  微信公众号  Tags:容器   点击:(51)  评论:(0)  加入收藏
Docker与Docker Compose入门:释放你应用部署的威力
今天给大家介绍一项强大而有趣的技能,那就是使用 Docker 和 Docker Compose 来释放你的应用部署的威力!无论你是一名开发人员还是系统管理员,掌握这个技能都将为你的工作带来巨...【详细内容】
2024-01-17  waynblog  微信公众号  Tags:Docker   点击:(69)  评论:(0)  加入收藏
Docker镜像与容器的交互及在容器内部执行代码的原理与实践
Docker作为一种流行的容器技术,已经成为现代应用程序开发和部署的重要工具。在Docker中,镜像是构建和运行容器的基础,而容器则是基于镜像创建的可执行实例。Docker镜像与容器的...【详细内容】
2024-01-10  编程技术汇  今日头条  Tags:Docker   点击:(83)  评论:(0)  加入收藏
如何在 Ubuntu 上安装 Docker
使用 Docker 意味着开启一个新的计算领域,但如果你刚刚开始使用 Docker,安装可能看起来是一项艰巨的任务。在 Ubuntu 上安装 Docker 有两种推荐的方法: 从 Ubuntu 的仓库安装 D...【详细内容】
2024-01-04    Linux中国  Tags:Docker   点击:(127)  评论:(0)  加入收藏
从Kubernetes的探针到DevOps
今天在群里又看有人问如何设置 Kubernetes 的探针,感觉要补充的话太多了,结合我们在一些 DevOps 项目中痛苦的体验,今天一劳永逸的全部说完,此外,也为大家展现一下为什么 DevOps...【详细内容】
2023-12-27  云云众生s  微信公众号  Tags:Kubernetes   点击:(124)  评论:(0)  加入收藏
站内最新
站内热门
站内头条