一、基础
(一)特点
1、容器:
沙箱、无任何接口、低开销
2、场景:
Web 应用自动化打包、发布
自动化测试、持续集成、发布
服务型环境中部署、调整数据库、其他后台应用
从头编译、扩展现有 OpenShift 、 Cloud Foundry 平台
搭建自己 PaaS 环境
(二)架构
镜像(文件)→容器(运行环境)
1、镜像(Image):类(静态)
完整root 文件系统
2、容器(Container):实例(运行)
完整运行环境、单独隔离
创建、启动、停止、删除、暂停
1个容器:1个环境
相互隔离
3、仓库(Repository):
仓库可看成一个代码控制中心,用来保存镜像。
二、Docker环境配置
(一)Lnux安装Docker
系统:CentOS
CE版本——社区免费版
YUM(yellowdog updater modified):
RPM 系统的自动更新和软件包安装 / 卸载器
自动计算依赖和找出想要安装的软件包
1、更新 yum 包:看情况
sudo yum -y update
2、卸载旧版本
sudo yum remove docker docker-common docker-selinux docker-engine
3、安装软件包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
4、设置yum源:docker地址
sudo yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo
5、查看可用版本:
sudo yum list docker-ce --showduplicates | sort -r
6、安装Docker
方式1:yum install docker-ce docker-ce-cli containerd.io
方式2:sudo yum install docker-ce
方式3:sudo yum -y install docker-ce-18.06.3.ce
7、启动Docker
启动:sudo systemctl start docker
service docker start
停止:systemctl stop docker
重启:systemctl restart docker
8、查看Docker版本
docker version
docker -v
9、Docker状态
systemctl status docker
10、Docker开机自启
sudo systemctl enable docker
(二)阿里云镜像云加速:Centos
1、创建目录
sudo mkdir -p /etc/docker
2、配置地址信息
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://1b7rui7i.mirror.aliyuncs.com"]
}
EOF
3、重启后台线程
sudo systemctl daemon-reload
4、重启Docker服务
sudo systemctl restart docker
三、Docker安装镜像容器
默认下载最新——可指定版本:版本
直接拉取时:默认下载最新版本
(一)拉取镜像
sudo docker pull mysql:5.7
(二)查看镜像
sudo docker images
四、Docker启动镜像容器
创建容器
文件挂载
端口映射
(一)创建镜像实例:
sudo docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
(二)端口映射:访问linux直接映射到mysql
容器端口——主机端口
3306:3306
虚拟linux端口——实际linux主机端口
(三)目录挂载:-V
(四)查看实例:
sudo docker ps
五、进入容器内部:容器=linux系统
(一)进入mysql容器内部控制台
sudo docker exec -it mysql /bin/bash
(二)查看mysql内部容器目录
ls
目录:就是一个linux系统
bin dev
entrypoint.sh home lib64 mnt proc run srv tmp var
boot docker-entrypoint-initdb.d etc
lib media opt root sbin sys usr