Docker的安装:
(1)yum 包更新到最新
> yum update
(2)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
> yum install -y yum-utils device-mapper-persistent-data lvm2
(3)设置yum源为阿里云
> yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(4)安装docker
> yum install docker-ce -y
(5)安装后查看docker版本
> docker -v
设置ustc镜像源:
方法一: 编辑该文件:
mkdir -p /etc/docker
vim /etc/docker/daemon.json
# 在该文件中输入如下内容:
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
# 配置多个如下:
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],
"registry-mirrors": ["https://0wrdwnn6.mirror.aliyuncs.com"]
}
或者方法二:设置镜像源为阿里云
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-‘EOF‘
{
"registry-mirrors": ["https://0wrdwnn6.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
启动与关闭docker:
# 启动docker:
systemctl start docker
# 停止docker:
systemctl stop docker
# 重启docker:
systemctl restart docker
# 查看docker状态:
systemctl status docker
# 开机启动:
systemctl enable docker
systemctl unenable docker
# 查看docker概要信息
docker info
# 查看docker帮助文档
docker –help:
1:搜素镜像:docker search 镜像名称,例如:docker search redis
2:下载镜像的命令: docker pull 镜像名称[:TAG] 如果TAG不指定,那么下载的最新版本,就相当于自动增加::latest
例如:
docker pull redis:7
3:查看已下载的镜像: docker images
4:删除镜像:docker rmi 镜像名称|镜像ID
要是有下载好的镜像tar包,使用 docker load -i xxx.tar(镜像包名)相当于下载。例如:docker load -I redis.tar
容器的命令:
创建:docker run -it或者-id --name 容器名字 镜像:tag ,例如:docker run -di --name myredis2 redis:latest
端口映射创建:docker run -it或者-id --name 容器名字 -p xxxx:yyyy 镜像:tag,例如:
docker run -di --name myredis2 -p 6666:6379 redis:latest
目录挂在创建:docker run -it或者-id --name 容器名字 -p xxxx:yyyy -v 宿主机目录:容器目录 镜像:tag,例如:docker run -di --name mytomcat2 -p 8080:8080 -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps tomcat:7-jre7
删除容器:docker rm 容器的id或者名字,例如:docker rm myredis
查看所有容器:docker ps -a
查看运行容器:docker ps
进入容器目录:docker exec -it 容器名称 (或者容器ID) /bin/bash
退出当前容器:exit
启动容器:docker start 容器名称(或者容器ID)
重启容器:docker restart 容器名称(或者容器ID)
停止容器:docker stop 容器名称(或者容器ID)
查询启动日志:docker logs -f 容器id(容器名字)
注意:1.如果你删除一个容器,必须这个容器是停止状态,然后删除。
如果启动容器出错:
# 出现如下类似错误
#COMMAND_FAILED: ‘/sbin/iptables -t nat -A DOCKER -p tcp -d 0/0 --dport 8111 -j DNAT --to-destination 172.17.0.6:8111 ! -i docker0‘ failed: iptables: No chain/target/match by that name.
把网卡重新设置如下:
pkill docker
iptables -t nat -F
ifconfig docker0 down
brctl delbr docker0
systemctl start docker
重启docker后解决。
容器中的文件拷贝:
将文件拷贝到容器内可以使用cp命令:
docker cp 需要拷贝的文件或目录 [容器名称|ID]:容器目录,例如:docker cp hello.txt mynginx:/usr/local
将文件从容器内拷贝出来:
docker cp 容器名称:容器目录 需要拷贝的文件或目录,例如:docker cp mynginx:/usr/local/hello.txt hello.txt
基本镜像安装:
docker中安装mysql容器:
- 拉取mysql镜像 docker pull mysql:5.7
- 创建容器 docker run -di --name mymysql5.7 -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
docker内 tomcat的安装:
- 拉取镜像 docker pull tomcat:8.5.40
- 创建容器 docker run -di --name mytomcat -p 8080:8080 -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps tomcat:8.5.40
docker下nginx的安装:
- 拉取镜像 docker pull nginx
- 创建按容器 docker run -di –name mynginx -p 80:80 nginx
docker下redis的安装:
1. 拉取镜像 docker pull redis
2. 创建按容器 docker run -di –name mynginx -p 6379:6379 redis
docker下rabbitmq的安装:
- 拉取镜像 docker pull rabbitmq:management
- 创建按容器 docker run -di --name myrabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 rabbitmq:management
1.容器保存为镜像:
docker commit [容器名称|ID] 生成新的镜像名字,例如:docker commit mynginx mynginx_i
2.镜像备份成tar包(注意是保存在当前执行命令的宿主机上的目录中),也就是把容器打成tar包的镜像:
docker save -o【取的镜像名.tar】镜像名 例如: docker save -o mynginx.tar mynginx_i
原文地址:https://www.cnblogs.com/3hhh/p/11775703.html