Docker入门到实践
docker中文社区
什么是 Docker | docker-practice.com
docker-ce引擎版本:20.10.16
id可以只打前几位,能区分就行。
不推荐装MySql
查找容器两法
- 容器id
- 容器名:tag — tag通过images可以查,不能省tag!! (latest的tag可以省
名词概念
容器 > 镜像 > 程序
- **dockfile:**自动化的脚本,自动创建镜像Image。
- Image镜像: 相当于虚拟机的快照,通过一个镜像可以创建多个容器。 ---- 像应用商店的APP、Cent7.iso
- tomcat镜像 ===> run ==>tomcat容器(提供服务器),最终在容器中跑项目。
- 镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。
- 所有的应用,直接打包
Docker
镜像,就可以直接跑起来! 得到镜像的方法如下
- 从远程仓库下载
- 朋友拷贝给你
- 自己制作一个镜像
DockerFile
- Container容器: 相当于虚拟机,有着一整套的环境,和其他环境互不干扰。 被一个进程管理,进程停,容器停。 —虚拟机
- 仓库Repository: 存放镜像的地方!! 类似Maven仓库,分为公有和私有。
- 例子:默认Docker Hub国外慢,阿里云镜像加速快
相较于以往的jar包部署,Docker更方便部署。
虚拟、容器技术
1、传统虚拟技术
加载Guest OS
每次新建都需重新加载内核,进行引导
须要虚拟的有:
硬件、操作系统、内核。 — 典例:虚拟机
2、Docker虚拟技术
有着更少的抽象层
方便的升级和扩缩容
项目打包为一个镜像,须要升级时升级镜像即可。
操作系统层面的虚拟化技术,利用宿主机的内核
无硬件、无OS,新建容器无需重新加载内核,更加轻便。
安装Docker
Centos7下安装Docker
Centos7安装docker
使用虚拟机192.168.86.128安装
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| # 查看内核版本 --- 要高于3.10 [root@lzwEdu01 ~]# uname -r 3.10.0-957.el7.x86_64
# 查看OS [root@lzwEdu01 ~]# cat /etc/os-release NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7"
|
帮助文档:https://docs.docker.com/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| # 1、卸载之前的docker sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine
# 2、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # 3、设置yum的docker的源(默认国外,改为阿里云 国外慢: https: 阿里云快: yum-config-manager --add-repo http:
# 狂神额外更新索引 yum makecache fast # 4、安装docker引擎,是引擎哦 (docker-ce社区版,ee商业版 查看可安装的版本 yum list docker-ce --showduplicates | sort -r 安装最新版 yum install docker-ce docker-ce-cli containerd.io # 5、看版本 docker version # 6、启动docker systemctl start docker # 7、运行hello world (先拉取镜像hello-world docker run hello-world
|
默认工作目录:/var/lib/docker
阿里云镜像加速
可以省略
支付宝阿里云账号
搜索:云服务 —> 容器镜像服务 —> 镜像工具 —> 镜像加速器 —> CentOs
1 2 3 4 5 6 7 8 9 10 11
| sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://4gf7t49m.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload
sudo systemctl restart docker --- 重启
|
HelloWorld回顾
docker run hello-world
命令的步骤有:
底层原理