docker安装

安装前准备:

​ 1、禁用 selinux [SELINUX=disabled]

​ 2、卸载防火墙 [yum -y remove firewalld-*]

​ 3、docker软件安装包在 云盘\kubernetes\docker 目录下,将 docker 目录上传到跳板机

​ 4、准备 2 台 2cpu,2G内存的云主机

主机名 IP地址 最低配置
node-0001 192.168.1.31 2CPU,2G内存
node-0002 192.168.1.32 2CPU,2G内存

跳板机yum源添加docker软件

[root@ecs-proxy ~]# cp -a docker /var/ftp/localrepo/
[root@ecs-proxy ~]# cd /var/ftp/localrepo/
[root@ecs-proxy localrepo]# createrepo --update .

在 node 节点验证软件包

[root@node-0001 ~]# yum makecache
[root@node-0001 ~]# yum list docker-ce*

以下操作所有 node 节点都需要执行

开启路由转发

[root@node-0001 ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
[root@node-0001 ~]# sysctl -p
[root@node-0001 ~]# yum install -y docker-ce
[root@node-0001 ~]# systemctl enable --now docker
[root@node-0001 ~]# ifconfig # 验证,能看见 docker0
[root@node-0001 ~]# docker version # 验证,没有报错

开放 FORWARD 默认规则

[root@node-0001 ~]# vim /lib/systemd/system/docker.service
# 在 ExecStart 下面添加
ExecStartPost=/sbin/iptables -P FORWARD ACCEPT
[root@node-0001 ~]# systemctl daemon-reload
[root@node-0001 ~]# systemctl restart docker
[root@node-0001 ~]# iptables -nL FORWARD

镜像管理&容器管理

docker镜像管理命令

镜像管理命令 说明
docker images 查看本机镜像
docker search 镜像名称 从官方仓库查找镜像
docker pull 镜像名称:标签 下载镜像
docker push 镜像名称:标签 上传镜像
docker save 镜像名称:标签 -o 备份镜像名称.tar 备份镜像为tar包
docker load -i 备份镜像名称 导入备份的镜像文件
docker rmi 镜像名称:标签 删除镜像(必须先删除该镜像启动的所有容器)
docker history 镜像名称:标签 查看镜像的制作历史
docker inspect 镜像名称:标签 查看镜像的详细信息
docker tag 镜像名称:标签 新的镜像名称:新的标签 创建新的镜像名称和标签

导入 centos nginx redis ubuntu 四个镜像到 node 节点(使用 lftp 或 scp 均可)

镜像素材在云盘的 kubernetes/docker-images/ 目录下

# 依照上面方法依次导入 nginx.tar.gz redis.tar.gz ubuntu.tar.gz
[root@node-0001 ~]# docker load -i centos.tar.gz# 查看镜像
[root@node-0001 ~]# docker images# 备份镜像 centos 到 tar 包
[root@node-0001 ~]# docker save centos:latest -o centos.tar# 删除镜像,不能删除已经创建容器的镜像
[root@node-0001 ~]# docker rmi ubuntu:latest# 查看镜像的详细信息
[root@node-0001 ~]# docker inspect centos:latest# 查看镜像的历史信息
[root@node-0001 ~]# docker history nginx:latest# 给镜像添加新的名词和标签
[root@node-0001 ~]# docker tag ubuntu:latest newname:newtag# ----------------------以下操作必须在一台可以访问互联网的机器上执行---------------------------
# 搜索镜像
[root@node-0001 ~]# docker search busybox# 下载镜像
[root@node-0001 ~]# docker pull busybox

docker容器管理命令

容器管理命令 说明
docker run -it(d) 镜像名称:标签 启动命令 创建启动并进入一个容器,后台容器使用参数 d
docker ps 查看容器 -a 所有容器,包含未启动的,-q 只显示id
docker rm 容器ID -f 强制删除,支持命令重入
docker start|stop|restart 容器id 启动、停止、重启容器
docker cp 本机文件路径 容器id:容器内路径 把本机文件拷贝到容器内(上传)
docker cp 容器id:容器内路径 本机文件路径 把容器内文件拷贝到本机(下载)
docker inspect 容器ID 查看容器的详细信息
docker attach 容器id 进入容器的默认进程,退出后容器会关闭
docker attach 容器id [ctrl+p, ctrl+q] 进入容器以后,退出容器而不关闭容器的方法
docker exec -it 容器id 启动命令 进入容器新的进程,退出后容器不会关闭

docker run 启动一个新的容器

​ -i 交互式,-t 终端, -d 在后台启动

# 在后台启动容器
[root@node-0001 ~]# docker run -itd nginx:latest
9cae0af944d81770c90fdeacf7a632aaa749b0c9fbc0f4cb104e1d1257579e5e
# 在前台启动容器
[root@node-0001 ~]# docker run -it --name myos centos:latest /bin/bash
[root@de46e6254efd /]# ctrl+p, ctrl+q # 使用快捷键退出,保证容器不关闭# 查看容器
[root@node-0001 ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED
de46e6254efd        centos:latest       "/bin/bash"              2 minutes ago
9cae0af944d8        nginx:latest        "nginx -g 'daemon of…"   7 minutes ago
# 只查看id
[root@node-0001 ~]# docker ps -q
# 查看所有容器,包含未启动的
[root@node-0001 ~]# docker ps -a# 进入容器的默认进程
[root@node-0001 ~]# docker attach de46e6254efd
[root@de46e6254efd /]# exit # 退出后容器会关闭# 启动、停止、重启容器
[root@node-0001 ~]# docker start   de46e6254efd
[root@node-0001 ~]# docker stop    9cae0af944d8
[root@node-0001 ~]# docker restart 9cae0af944d8# 查看容器详细信息
[root@node-0001 ~]# docker inspect 9cae0af944d8
... ..."IPAddress": "172.17.0.2",
... ...
[root@node-0001 ~]# curl http://172.17.0.2/# 进入容器,查看路径
[root@node-0001 ~]# docker exec -it 9cae0af944d8 /bin/bash
root@9cae0af944d8:/# cat /etc/nginx/conf.d/default.conf
... ...root   /usr/share/nginx/html;
... ...# 从容器内拷贝首页文件到宿主机,修改后拷贝回容器内
[root@node-0001 ~]# docker cp 9cae0af944d8:/usr/share/nginx/html/index.html ./index.html
[root@node-0001 ~]# vim index.html
Hello Tedu
Hello Tedu
Hello Tedu
[root@node-0001 ~]# docker cp ./index.html 9cae0af944d8:/usr/share/nginx/html/index.html
[root@node-0001 ~]# curl http://172.17.0.2/# 删除容器
[root@node-0001 ~]# docker rm -f de46e6254efd
# 删除所有容器
[root@node-0001 ~]# docker rm -f $(docker ps -aq)

容器内服务安装

[root@node-0001 ~]# docker rm -f $(docker ps -aq)
[root@node-0001 ~]# docker run -it --name myapache centos:latest
[root@a7f9d0c3e3e2 /]# rm -f /etc/yum.repos.d/*.repo
#---------------------不要退出这个终端,在另一个终端拷贝 yum 配置文件到容器--------------------
[root@node-0001 ~]# docker cp /etc/yum.repos.d/CentOS-Base.repo myapache:/etc/yum.repos.d/
#------------------------回到创建容器的终端继续执行命令--------------------------------------
[root@a7f9d0c3e3e2 /]# yum install -y net-tools httpd
[root@a7f9d0c3e3e2 /]# echo Hello world >/var/www/html/index.html
[root@a7f9d0c3e3e2 /]# export LANG=C
[root@a7f9d0c3e3e2 /]# ifconfig
[root@a7f9d0c3e3e2 /]# /usr/sbin/httpd -DFOREGROUND
# 启动服务以后 ctrl-p, ctrl-q 退出
[root@node-0001 ~]# curl http://172.17.0.2/
Hello world

总结:

​ 管理镜像使用 名称:标签

​ 管理容器使用 **容器ID

华为云部署K8s之容器技术.docker安装相关推荐

  1. 【云原生之企业级容器技术 Docker实战一】Docker 介绍

    目录 一.Docker 介绍 1.1 容器历史 1.2 Docker 是什么 1.3 Docker 和虚拟机,物理主机 1.4 Docker 的组成 1.5 Namespace 1.6 Control ...

  2. 华为云部署K8s之K8s安装4

    kubernetes – 04 kubernetes 性能与监控 部署metrics-server 开启apiserver聚合服务 [root@master ~]# vim /etc/kubernet ...

  3. 左手自研,右手开源,技术解读华为云如何领跑容器市场

    摘要:云原生浪潮下,容器技术是串联起整个云原生世界的关键一环. 本文分享自华为云社区<左手自研,右手开源,技术揭秘华为云如何领跑容器市场>,作者:华为云社区精选. 近日,IDC 发布的&l ...

  4. 【华为云原生入门级认证】第 2 章 云原生基础设施之容器技术

    云原生 第2章 云原生基础设施之容器技术 2.1 容器发展背景 企业 IT 业务云化路径 - 传统业务云化 方式一:物理机部署,统一管理 特征: 业务无法云化部署,物理资源搬迁或纳管到云平台资源池. ...

  5. 云漫圈 | 容器技术docker应用场景解析

    戳蓝字"CSDN云计算"关注我们哦! 作者:channingbreeze 文章转载自程序员乔戈里 话说小史已经接受了A厂的offer,这不,已经在公司附近租好了房子,准备搬家过去住 ...

  6. 《云原生入门级开发者认证》学习笔记之云原生基础设施之容器技术

    写在前面 嗯,报了考试,整理课堂笔记记忆 学习的原因: 虽然考了CKA,了解了一些K8s相关的知识 但是对云原生整个体系一直都很模糊 希望对云原生有一个基本的认识 通过学习实现云原生相关入门 博文主要 ...

  7. 腾讯云部署K8s集群

    腾讯云部署K8s集群 文章目录 腾讯云部署K8s集群 0. 导读(重要!!!一定要读) 1. 环境准备 版本 服务器配置 2. 安装步骤 所有主机操作 1. 提前准备 2. 安装docker 3. 安 ...

  8. 华为云部署 springboot

    我这几天用了华为云部署了docker 聚到了很多问题总算是部署成功了 1.首先通过官方下载docker容器 2.把要部署的项目放到linux服务器中 3.最重要的一步运行 因为华为云的是arm架构所以 ...

  9. 漫画 | 从搬家到容器技术 Docker 应用场景解析

    作者 |  channingbreeze 责编 | 仲培艺 小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. 生活现场 话说小史已经接受了 A ...

最新文章

  1. 【swjtu】数字电路实验2_杨辉三角发生器
  2. python代码编辑器排行榜-写 Python 哪个编辑器 / IDE 最好用?
  3. POJ1269:Intersecting Lines(判断两条直线的关系)
  4. python 编程该看那些书籍_我用python5年后,我发现学python编程必看的三本书!
  5. Java的容器的线程安全
  6. 最简单的 java 防反编译技巧
  7. 牛客 - Subset of Five(背包)
  8. MFC中获取命令行参数的几种方法
  9. java asc码_Java中ASC码与字符互相转化
  10. Neo4j之下载安装:windows
  11. 伍德里奇计量经济学导论之计算机操作题的R语言实现(虚拟变量)
  12. python读取同花顺数据_python爬取同花顺数据
  13. 天堂2游戏登陆服务器源码分析1
  14. Xshell 新手安装教程
  15. java 网络编程
  16. System.Reflection.ReflectionTypeLoadException
  17. 简单说下antv图表的使用
  18. Scratch软件编程等级考试一级——20200913
  19. hammer.js教程2
  20. 关闭计算机用英语怎么说,关闭计算机用英语肿么说

热门文章

  1. SpringBoot打成jar包部署,Excel模板下载文件遇到的问题
  2. 自动获取sim号码填入edittext
  3. 黑龙江中医药大学本科毕业论文答辩和论文选题PPT模板
  4. 【Get深一度】超炫的机器人公司Boston Dynamics(波士顿动力)
  5. 西门子RS485自由口通信Modbus RTU 通信协议
  6. 为什么支付宝不怕你欠债?
  7. mysql 取最后一个数字_mysql最后一个内容orm
  8. 计算机网络知识总结(七)网络安全
  9. yolov5-5.0加入CBAM,SE,CA,ECA注意力机制
  10. day03--java基础编程:面向对象,构造方法,代码块讲解,this super,static,final,访问修饰符,方法重写,向上_下造型,main方法,抽象类,接口,设计模式,异常,内部类