docker 基础教程
一,docker简介
1.Docker 是 PaaS 提供商 dotCloud 开源的一个基于 LXC 的高级容器引擎,源代码托管在 Github 上, 基于go语言并遵从Apache2.0协议开源。
2.docker相对于VM还要轻量级的技术,要说感觉的化类似于jar包,docker容器已经打包好了所有程序,只需要将容器在有资源的服务器上运行起来就是一个成型的产品,迁移时只需要将容器重新打包下来,导入到其他服务器即可运行。
3.Docker支持64位版本的CentOS 7和CentOS 8及更高版本,它要求Linux内核版本不低于3.10。
4.通常是一台虚拟机安装一个Docker,也可以多台机器安装多个Docker,组成Docker集群,每个Docker里面包含了诸多镜像,运行镜像产生容器,一个镜像可以运行多个容器,每个容器运营一个微服务。
docker和虚拟机的对比
虚拟机(虚拟机连硬件都模拟,模拟的一个完整的操作系统)的缺点:
1、资源占用多
2、冗余步骤多
3、启动慢
Docker和传统虚拟化方式的不同之处:
传统的虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上在运行所需应用进程。
而容器内的应用进程直接运行与宿主机的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便。
每个容器之间相互隔离,每个容器自己有自己的文件系统,容器之间的进程不会互相影响,能区分计算资源。
二,安装docker
阿里官网下载:https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.57e31b11KLDD65
这里我将centos安装阿里dockker镜像源和安装docker的方法复制出来了(需要链接外网)
1. 如果之前安装过docker执行以下步骤,没有跳过此步骤
rm-rf /etc/docker
rm-rf /run/docker
rm-rf /var/lib/dockershim
rm-rf /var/lib/docker
umount /var/lib/docker/devicemapper
#查看有哪些docker程序已安装并卸载掉
yum list installed |grepdocker
我这里只有docker-client和docker-common
yum remove -y docker-client docker-common
yum list installed |grepdockerdocker version
2. 开始安装docker
# step 1: 安装必要的一些系统工具sudo yum install-y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3sudosed-i's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CEsudo yum makecache fast
sudo yum -yinstall docker-ce
# Step 4: 开启Docker服务sudoservicedocker start
# 注意:# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。# vim /etc/yum.repos.d/docker-ce.repo# 将[docker-ce-test]下方的enabled=0修改为enabled=1## 安装指定版本的Docker-CE:# Step 1: 查找Docker-CE的版本:# yum list docker-ce.x86_64 --showduplicates | sort -r# Loading mirror speeds from cached hostfile# Loaded plugins: branch, fastestmirror, langpacks# docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable# docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable# docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable# Available Packages# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)# sudo yum -y install docker-ce-[VERSION]
#验证下安装是否成功docker version
三,安装私有化仓库Harbor
1.前置要求
安装dcoker-compose
这个是官方地址,可能比较慢,推荐使用下面的国内镜像地址
sudocurl-L"https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname-s)-$(uname-m)"-o /usr/local/bin/docker-compose
国内镜像地址
curl-L https://get.daocloud.io/docker/compose/releases/download/1.29.1/docker-compose-`uname-s`-`uname-m`> /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose version
安装openssl
yum install-y openssl
yum list |grep openssl
2.harbor离线安装
2.1.harbor离线包下载
https://github.com/goharbor/harbor/releases
2.2.解压配置仓库信息
tar xf harbor-offline-installer-v2.7.0.tgz
cd harbor
cp harbor.yml.tmpl harbor.yml
vim harbor.yml
hostname 安装harbor的那台IP的地址
port:harbor的端口自定义即可
harbor_admin_password 自定义密码
2.3.开始安装
sh install.sh
浏览器访问192.168.30.101:9687 IP和端口是之前harbor.yml文件中设置好的,密码是harbor_admin_password的内容
2.4.新建项目
-1代表无限大
2.5.修改后台配置指向私有仓库
这是我的另外一台(docker02)节点上面已经装好了docker,把镜像仓库指地址向到我已经搭好仓库的那台
vim /etc/docker/daemon.json
重启docker,让仓库地址生效
systemctl restart docker
3.打包并上传镜像到私有仓库
3.1 .配置阿里云公网镜像库加私有化仓库
docker01节点操作
vim /etc/docker/daemon.json
{"registry-mirrors":["https://72idtxd8.mirror.aliyuncs.com"],
"insecure-registries":["192.168.30.101:9687"]}
3.2.重启docker让配置生效
systemctl restart docker
systemctl status docker
3.3.拉取镜像
因为是公网拉取的应该不快
docker pull mysql
docker images
3.4.上传从外网下载的镜像到私有仓库
打包已有镜像为新的镜像
docker tag mysql:latest 192.168.30.101:9687/registry/mysql:v2
docker images
3.5.登入harbor
docker login -u admin -p admin 192.168.30.101:9687
3.6.上传镜像
docker push 192.168.30.101:9687/registry/mysql:v2
3.7.换到docker02节点拉取镜像
docker pull 192.168.30.101:9687/registry/mysql:v2
docker images
前端也可以看见下载增加为1了
四,基础命令
基础命令转自其他博客大佬:
https://blog.csdn.net/D1179869625/article/details/122933562
docker的使用也推荐看看菜鸟教程适合新手门还有例子简单易懂:
https://www.runoob.com/docker/docker-tutorial.html
版权归原作者 wn_96 所有, 如有侵权,请联系我们删除。