docker教程通俗易懂
程序员文章站
2022-04-19 20:58:25
...
文章目录
docker简介
docker安装与启动
1.yum包更新到最新
sudo yum update
2.安装所需的软件包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3.设置yum源为阿里云
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux
/centos/docker-ce.repo
4.安装docker
sudo yum install docker-ce
4.1 安装containerd.io-1.2.6-3.3.el7.x86_64.rpm
dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
5.安装后查看docker版本
docker -v
6.启动docker并加入开机自动启动
systemctl start docker
systemctl enable docker
7.重新加载配置文件
systemctl reload docker
8.重启docker
systemctl restart docker
centos8安装docker报错
- Error:
Problem: package docker-ce-3:19.03.8-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed
dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
设置ustc的镜像
ustc是老牌的linux镜像服务提供者,ustc的docker镜像加速器速度很快。ustc docker mirror 的优势就是不需要注册,是真正的公共服务。
1.编辑该文件
vi /etc/docker/daemon.json
2.在该文件中输入如下内容:
{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
}
启动停止docker
1.启动docker
systemctl start docker
2.查看docker启动状态
systemctl status docker
3.停止docker
systemctl stop docker
4.重启docker
systemctl restart docker
5.开机自启
systemctl enable docker
6.查看概要信息
docker info
7.查看docker帮助文档
docker --help
docker镜像常用命令
- 查看镜像
1.查看镜像
docker images
- 搜索镜像
1.搜索镜像(搜索的是互联网上的镜像)
docker search 镜像名称
- 拉取镜像
1.拉取镜像
docker pull centos:7
- 删除镜像
1.按镜像ID删除镜像
docker rmi 镜像ID
2.删除所有镜像
docker rmi 'docker images -q' (左上角的单引号)
docker容器相关的命令
- 查看容器
1. 查看正在运行的容器
docker ps
2.查看所有的容器
docker ps -a
3.查看最后一次运行的容器
docker ps -l
4.查看停止的容器
docker ps -f status-exited
- 创建与启动容器
1.交互式方式创建容器
docker run -it --name=容器名称 镜像名称:标签 /bin/bash
2.退出当前容器
exit
3.守护方式创建容器
docker run -di --name=容器名称 镜像名称:标签
4.登录守护式容器方式
docker exec -it 容器名称(或者容器id) /bin/bash
1.进入守护方式进行的容器
docker exec -it mycentos2(容器名称) /bin/bash
- 停止与启动容器
1.停止容器
docker stop 容器名称(或者容器ID)
2.启动容器
docker start 容器名称(或者容器ID)
- 文件拷贝
docker cp 文件路径 容器名称:容器目录
docker cp 容器名称:容器目录 需要拷贝的文件或者目录
- 目录挂载
1.就是目录共享
docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name-mycentos3 centos:7
- 获取容器的ip
docker inspect --format='{{.NetworkSettings.IpAddress}}' mycentos3
- 移除容器
1.移除容器之前必须先停掉容器
docker rm mycentos3
ubuntu18.04部署
- 下载容器
1.docker pull ubuntu:18.04
- 运行容器
1.docker run -di --name=myubuntu ubuntu:18.04 /bin/bash
- 查看容器ip
1.docker inspect myubuntu
- 查看正在运行的容器
1.docker ps
- 进入守护式创建的容器
1.进入守护方式进行的容器
docker exec -it myubuntu(容器名称) /bin/bash
- 进入容器安装curl报错
解决问题
1.apt-get update
2.apt-get-upgrade
3.apt-get install curl 安装成功
- 无法Ping
- systemctl command not found
jdk部署
- 查找jdk镜像
docker search jdk
- 下载openjdk镜像
docker pull openjdk
- 运行jdk容器
docker run -d -it --name myopenjdk openjdk /bin/bash
格式: docker run -d -it [镜像名称或id] /bin/bash
注意: -it /bin/bash 一定不能省了,不然jdk起不来,或者懒人写法 -it bash 也可以。
- 进入容器验证:
docker exec -it myopenjdk /bin/bash
mysql部署
1.拉取mysql镜像
docker pull centos/mysql-57-centos7
2.创建容器
docker run -di --name=tensquare_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
-p代表端口映射,格式为 宿主机映射端口:容器运行端口
-e代表添加环境变量 MYSQL_ROOT_PASSWORD 是root用户的登录密码
3.进入mysql容器
docker exec -it tensquare_mysql /bin/bash
4.登录Mysql
mysql -u root -p
tomcat部署
1.拉取镜像
docker pull tomcat:7-jre7
2.创建容器
创建容器 -p表示地址映射
-v表示目录映射
docker run -di --name=mytomcat -p 9000:8080
-v /usr/local/webapps:/usr/local/tomcat/webapps tomcat:7-jre7
zookeeper部署
- 部署流程
1. systemctl status firewalld 查看防火墙状态
2. systemctl disable firewalld 关闭防火墙
3. docker pull zookeeper:3.5 下载zookeeper镜像
4. docker images 查看镜像
5. docker run -di --name=zk -p 2181:2181 zookeeper:3.5 以守护方式(后台运行)运行容器
6. docker exec -it zk /bin/bash 进入容器
nginx部署、
1.拉取镜像
docker pull nginx
2.创建nginx容器
docker run -di --name=mynginx -p 80:80 nginx
redis部署
1.拉取镜像
docker pull redis
2.创建容器
docker run -di --name=myredis -p 6379:6379 redis
迁移与备份
1.将容器保存为镜像
docker commit mynginx mynginx_i
2.镜像备份
docker save -o mynginx.tar mynginx_i
3.镜像恢复与迁移
首先我们先删除掉mynginx_img镜像,然后执行此命令进行恢复
docker load -i mynginx.tar
-i输入的文件 执行后再次查看镜像,可以看到镜像已经恢复
dockerfile
docker私有仓库的创建
1.拉取私有仓库镜像
docker pull registery
2.启动私有仓库容器
docker run -di --name=registry -p 5000:5000 registry
3.打开浏览器 输入地址 http://192.168.184.141:5000/v2/_catalog看到{"registories":[]}表示私有仓库搭建成功并且内容为空
4.修改daemon.json
vi /etc/docker/daemon.json
添加如下内容.保存退出
{"insecure-registries":["192.168.184.141:5000"]}
此步用于让docker信任私有仓库地址
上一篇: div九宫格图片布局
下一篇: vue-cli用echarts实现地图