1.2 安装 docker 容器并配置镜像加速器
1.2.1 实验环境准备
实验环境: CENTOS7.9 64 位
主机名: hou
主机 ip: 10.0.8.120(这个 ip 大家可以根据自己所在环境去配置,配置成静态 IP)
4g 内存、4vCPU、100G 硬盘、网络 NAT 模式
配置静态 IP
把虚拟机或者物理机配置成静态 ip 地址,这样机器重新启动后 ip 地址也不会发生改变。以 hou 主机为例,修改静态 IP:
修改/etc/sysconfig/network-scripts/ifcfg-ens33 文件,变成如下:
PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static IPADDR=10.0.8.120 NETMASK=255.255.255.0 GATEWAY=10.0.8.254 DNS1=10.0.8.254 DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 DEVICE=ens33 ONBOOT=yes
#修改配置文件之后需要重启网络服务才能使配置生效,重启网络服务命令如下:
systemctl restart network
注:/etc/sysconfig/network-scripts/ifcfg-ens33 文件里的配置说明:
NAME=ens33 #网卡名字,跟 DEVICE 名字保持一致即可
DEVICE=ens33 #网卡设备名,大家 ip addr 可看到自己的这个网卡设备名,每个人机器可能这个名字不一样,需要写自己的
BOOTPROTO=static #static 表示静态 ip 地址
ONBOOT=yes #开机自启动网络,必须是 yes
IPADDR=10.0.8.120 #ip 地址,需要跟自己电脑所在网段一致
NETMASK=255.255.255.0 #子网掩码,需要跟自己电脑所在网段一致
GATEWAY=10.0.8.254 #网关,在自己电脑打开 cmd,输入 ipconfig /all 可看到
DNS1=10.0.8.254 #DNS,在自己电脑打开 cmd,输入 ipconfig /all 可看到
关闭 selinux
[root@hou ~]# setenforce 0 [root@hou ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config 注意:修改 selinux 配置文件之后,重启机器,selinux 才能永久生效 [root@hou ~]# getenforce Disabled #看到 Disabled 说明 selinux 成功关闭
配置主机名
[root@hou ~]# systemctl stop firewalld && systemctl disable firewalld
关闭防火墙
[root@hou ~]# systemctl stop firewalld && systemctl disable firewalld
配置时间同步
[root@hou ~]# yum install -y ntp ntpdate [root@hou ~]# ntpdate cn.pool.ntp.org
编写计划任务
[root@hou ~]# crontab -e * */1 * * * /usr/sbin/ntpdate cn.pool.ntp.org
重启 crond 服务使配置生效:
[root@hou ~]# systemctl restart crond
选择一种安装 docker 的方式:
1. 在线安装
配置 docker-ce 国内 yum 源(阿里云)
[root@hou ~]#yum -y install yum-utils [root@hou ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2. 配置 docker-ce 的离线 yum 源:
下面需要的 k8s-docker.tar.gz 压缩包在附件里
[root@hou ~]# mkdir /opt -p [root@hou ~]# tar xf k8s-docker.tar.gz -C /opt/ [root@hou ~]# tee /etc/yum.repos.d/k8s-docker.repo << 'EOF' [k8s-docker] name=k8s-docker baseurl=file:///opt/k8s-docker enable=1 gpgcheck=0 EOF
开始安装 docker
安装基础软件包
[root@hou ~]# yum install -y wget net-tools nfs-utils lrzsz gcc gcc-c++ make cmake libxml2-devel openssl-devel curl curl-devel unzip sudo ntp libaio-devel wget vim ncurses-devel autoconf automake zlib-devel python-devel epel-release openssh-server socat ipvsadm conntrack
安装 docker 环境
[root@hou ~]# yum install docker-ce -y
启动 docker 服务
[root@hou ~]# systemctl start docker && systemctl enable docker
查看 Docker 版本信息
[root@hou ~]# docker version
查看 docker 状态
[root@hou ~]# systemctl status docker #显示 running,说明 docker 正常起来了
1.2.2 开启包转发功能和修改内核参数
内核参数修改:br_netfilter 模块用于将桥接流量转发至 iptables 链,br_netfilter 内核参数需要开启转发。
[root@hou ~]# cat > /etc/sysctl.d/docker.conf <<EOF net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 EOF [root@hou ~]# sysctl -p /etc/sysctl.d/docker.conf
报错:
sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-ip6tables: No such file or directory sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-iptables: No such file or directory
解决方法:
[root@hou ~]# modprobe brnetfilter [root@hou ~]# sysctl -p /etc/sysctl.d/docker.conf
重启后模块失效,下面是开机自动加载模块的脚本
在/etc/新建 rc.sysinit 文件
[root@hou ~]# cat /etc/rc.sysinit #!/bin/bash for file in /etc/sysconfig/modules/*.modules ; do [ -x $file ] && $file done
在/etc/sysconfig/modules/目录下新建文件如下
[root@hou ~]# cat /etc/sysconfig/modules/br_netfilter.modules modprobe brnetfilter 增加权限 [root@hou ~]# chmod 755 /etc/sysconfig/modules/br_netfilter.modules
重启机器模块也会自动加载
[root@hou ~]# lsmod |grep br_netfilter br_netfilter 22209 0 bridge 136173 1 brnetfilter
注: Docker 安装后出现:WARNING: bridge-nf-call-iptables is disabled 的解决办法: net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1将 Linux 系统作为路由或者 VPN 服务就必须要开启 IP 转发功能。当 Linux 主机有多个网卡时一个网卡收到的信息是否能够传递给其他的网卡 如果设置成 1 的话 可以进行数据包转发 可以实现VxLAN 等功能。不开启会导致 docker 部署应用无法访问。
重启 docker
[root@hou ~]# systemctl restart docker
1.2.3 docker 基本用法-操作镜镜像拉取过程
搜索镜像
[root@hou ~]# docker search centos #默认从 Docker Hub 中搜索镜像。 NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 7091 [OK] centos/systemd systemd enabled base container. 107 [OK] centos/mysql-57-centos7 MySQL 5.7 SQL database server 92 centos/postgresql-96-centos7 PostgreSQL is an advanced Object-Relational … 45 centos/httpd-24-centos7 Platform for running Apache httpd 2.4 or bui… 44 centos/python-35-centos7 Platform for building and running Python 3.5… 39 centos/php-56-centos7 Platform for building and running PHP 5.6 ap… 34 centos/mysql-56-centos7 MySQL 5.6 SQL database server 22 centos/postgresql-10-centos7 PostgreSQL is an advanced Object-Relational … 19 kasmweb/centos-7-desktop CentOS 7 desktop for Kasm Workspaces 18 centos/nginx-112-centos7 Platform for running nginx 1.12 or building … 16 centos/nodejs-8-centos7 Platform for building and running Node.js 8 … 14 centos/mariadb-101-centos7 MariaDB 10.1 SQL database server 13 centos/mongodb-36-centos7 MongoDB NoSQL database server 8 centos/redis-32-centos7 Redis in-memory data structure store, used a… 6 centos/mariadb-102-centos7 MariaDB 10.2 SQL database server 6 centos/mongodb-34-centos7 MongoDB NoSQL database server 3 centos/ruby-25-centos7 Platform for building and running Ruby 2.5 a… 3 continuumio/centos5_gcc5_base 3 kasmweb/core-centos-7 CentOS 7 base image for Kasm Workspaces 2 datadog/centos-i386 0 bitnami/centos-extras-base 0 bitnami/centos-base-buildpack Centos base compilation image 0 [OK] ibmcom/fhe-toolkit-centos The IBM Fully Homomorphic Encryption (FHE) T… 0 ibmcom/fhe-toolkit-centos-amd64 The IBM Fully Homomorphic Encryption (FHE) T… 0
下载镜像
方法 1:从 docker hub 上下载
[root@hou ~]# docker pull centos Using default tag: latestError response from daemon: Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout
#报错了,因为网络的问题。 无法连接到 dockerhub 下载镜像。 如果你的网络没有问题,你可以下载。
解决:可以换种方法下载镜像
方法 2:配置镜像加速器
[root@hou ~]# tee /etc/docker/daemon.json << 'EOF' { "registry-mirrors":["https://rsbud4vc.mirror.aliyuncs.com","https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn","https://dockerhub.azk8s.cn","http://hub-mirror.c.163.com","http://qtid6917.mirror.aliyuncs.com","https://rncxm540.mirror.aliyuncs.com","https://e9yneuy4.mirror.aliyuncs.com"] } EOF
重启 docker 服务使配置生效
[root@hou ~]# systemctl daemon-reload && systemctl restart docker
重新下载,就可以了。
[root@hou ~]# docker pull centos [root@hou ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos latest 5d0da3dc9764 6 months ago 231MB
方法 3:把之前下载好的镜像通过 docker load -i 解压出来:
把 centos.tar.gz、nginx.tar.gz 镜像包上传到 hou机器的 root 目录,通过 docker load -i 解压镜像
[root@hou ~]# docker load -i /root/nginx.tar.gz
#注意:把镜像打成离线包
[root@hou ~]# docker save -o centos.tar.gz centos
查看镜像列表 列出本地所有镜像。
[root@hou ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos latest 5d0da3dc9764 6 months ago 231MB nginx latest f6d0b4767a6c 15 months ago 133MB
注:docker 镜像相当于对操作系统+程序+程序依赖的库打一个包
软件是依赖操作系统中的库或二进制文件。 如果我把软件所依赖的库和二进制文件打包在一起发布,不用物理机系统上的文件,也就不依赖物理机操作系统了。
删除镜像
[root@hou ~]# docker rmi -f <镜像名字>
镜像打标签
[root@hou ~]# docker tag centos:latest centos:v1
查看帮助命令
[root@hou ~]# docker --help
物料包:
链接:度娘网盘,自行取哈
提取码:oopp
1.2 安装 docker 容器并配置镜像加速器相关推荐
- Docker容器(配置+镜像建立及优化+镜像加速器制作)
一.docker简介 Docker是管理容器的引擎. Docker为应用打包.部署平台,而非单纯的虚拟化技术 1.VM vs Container 2.传统虚拟机和容器的技术对比 3.容器是如何工作的 ...
- Docker Note(2): 配置镜像加速器与常用指令
文章目录 一.配置镜像加速器 二.常用指令 1.帮助启动类指令 2.镜像命令 3.容器命令 一.配置镜像加速器 每个人都要有一个自己的加速器地址,这边用是阿里云镜像加速 链接:https://www. ...
- docker入门(二) 配置镜像加速器
一.为什么要下载镜像加速器 默认情况下,从dockerhub上下载 docker镜像太慢了,一般都会配置镜像加速器 ustc:中科大镜像加速器 阿里云 腾讯云 网易云 这里默认 下载腾讯云 二.具体步 ...
- Docker:docker简介及CentOS7安装Docker,以及配置镜像加速问题解决
一.Docker是什么: 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置.作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不 ...
- Windows安装docker,和配置镜像加速地址
https://www.runoob.com/docker/windows-docker-install.html 我的是win10家庭版10.0.14393 ,版本不够,得用toolbox安装. 在 ...
- Docker安装及配置镜像加速器
一:简介 首先说明一下Docker是什么,可以做什么. Docker是一个开源的容器引擎,可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理. Docker可更快地打包.测试以及部署应 ...
- Docker安装及配置镜像加速器(一)
一:简介 首先说明一下Docker是什么,可以做什么. Docker是一个开源的容器引擎,可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理. Docker可更快地打包.测试以及部署应 ...
- DockerKubernetes ❀ Docker的在线安装、离线安装、配置镜像加速器、配置文件参数详解
文章目录 1.Docker容器技术简述 2.CentOS 6安装Docker 3.CentOS 7/8安装Docker 3.1 卸载旧版本Docker与其依赖关系 3.2 安装Docker服务 3.2 ...
- Linux安装Docker容器环境centos中安装docker-compose容器编排dockerfile文件构建镜像(史上最详细的docker)
在Linux系统下安装docker容器环境 1.容器介绍 1.1 镜像(Image) 镜像可以用来创建Docker 容器,Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像, 用户甚至可 ...
- 从零开始一步一步搭建Ubuntu Server服务器、修改数据源、安装Docker、配置镜像加速器、Compose部署Gitlab服务
场景 最终目的是使用Docker Compose部署一个Gitlab服务. 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程 ...
最新文章
- 计算机网络的拓扑结构主要取决于它的( )
- c语言的有趣小程序,一个有趣的小程序
- Node.js 部署免费/自动续订 HTTPS
- Selenium UI 举例 getCssValue
- 机器学习 | 目录(持续更新)
- oracle数据库中基础知识,oracle数据库基础知识
- 动态球html,用html5标签让小球动起来
- 计算机桌面组成部分教案,三年级信息技术第五课设置个性桌面教学设计
- 五分钟商学院(基础---商业篇)
- 《数字图像处理(第三版)》 第一章 绪论 笔记
- ArcGIS Pro创建企业级地理数据库(Postgis)
- CISSP考试认证心得
- 数组扁平化 对象扁平化
- 管理是一门艺术,好坏全在细微之间
- Excel数据分析从入门到精通(一)软件操作技巧
- linux下PS1、PS2、PS3、PS4最全详解
- 神经网络四:Softmax以及与Sigmoid的关系
- jvm G1 深度分析
- 计算机排名次怎么操作,Excel表格怎么排名次?
- html img 圆头像_纯CSS3炫酷圆形头像图片过滤特效
热门文章
- conda 安装本地包_export包本地安装以及R包被CRAN移除后如何继续安装
- setpythonhome_python的set,和字典的详细使用方法,以及部分习题
- ip地址在c语言中长度是多少_c语言中(++i)+(++i)+(++i)究竟等于多少?
- arg是什么函数_CTF必备技能丨Linux Pwn入门教程——针对函数重定位流程的相关测试(上)...
- openpyxl安装_Openpyxl玩转Excel(一)——新建、读取、复制
- spring中bean的自动装配(详细)
- Properties文件操作
- RDD与DataFrame
- AspnetCore 缓存篇
- [JavaScript语法学习]重新认识JavaScript