Docker
docker概述
- Docker是一个开源的应用容器引擎
- 诞生于2013年初,基于Go语言实现,dotClou公司出品(后改名为Docker inc)
- Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可以直接的容器中,然后发布到任何流行的Linux机器上。
- 容器是完全使用沙盒机制,互相隔离
- 容器性能开销极低
- Docker从17.03版本之后分为社区版和企业版
Docker是一种容器技术,解决软件跨环境迁移的问题。
安装Docker
# 1、更新yum
yum update
# 2、安装软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
# 3、设置yum 源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 4、安装docker
yum install -y docker-ce
# 5、查看版本检查是否安装成功
docker -v
CentOS已经停止维护了,请参考https://blog.csdn.net/wykqh/article/details/123004620更换阿里源
Docker架构
配置Docker镜像加速
去阿里云配置https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
Docker命令
1、Docker服务相关命令
- 启动Docker
systemctl start docker
- 停止Docker
systemctl stop docker
- 重启Docker
systemctl restart docker
- 查看Docker状态
systemctl status docker
- 设置开机启动Docker
systemctl enable docker
2、Docker镜像相关命令
- 查看镜像:查看本地所有的镜像
docker images
docker images -q # 查看所有镜像id
- 搜索镜像
docker search 镜像名称
- 拉取镜像:指定版本号 镜像名称:版本号,如果不指定就是最新版本
docker pull 镜像名称
- 删除镜像
docker rmi 镜像id
docker rmi ‘docker image -q’ # 删除所有镜像
3、Docker容器相关命令
- 查看容器
docker ps # 正在运行的
docker ps -a # 全部的
- 创建并启动容器
docker run 参数
-
-i:保持容器运行
-
-t:为容器重新分配一个伪输入终端
-
-d:以守护模式运行容器,后台运行
-
–name:为容器命名
-
-it:交互是容器
-
-id:守护式容器
-
进入容器
docker exec 参数 # 退出后不会关闭
- 停止容器
docker stop 容器名称
- 启动容器
docker start 容器名称
- 删除容器(需要先停止)
docker rm 容器名称
- 查看容器信息
docker inspect 容器名称
Docker安装Mysql
- 搜索mysql镜像
docker search mysql
- 拉取mysql镜像
docker pull mysql
- 创建目录
mkdir ~/mysql
cd ~/mysql
- 启动容器
docker run -id \
-p 3306:3306 \
--name=mysql \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:latest
- 进入容器启动mysql
docker exec -it mysql /bin/bash
mysql -uroot -p 123456