一、CentOS7安装Docker
1.备份系统自带yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2.下载阿里云的yum源配置文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3.重新生成缓存
yum makecache
4.卸载老版本的Docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
5.安装yum工具包
sudo yum install -y yum-utils
6.配置仓库源
sudo yum-config-manager \
--add-repo \
https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
7.安装
sudo yum install docker-ce docker-ce-cli containerd.io
8.启动Docker
sudo systemctl enable docker
sudo systemctl start docker
安装出现错误:
需要:container-selinux >= 2:2.74
解决办法:
安装【docker-ce-selinux】
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
9.测试是否启动成功
docker -v
docker images
安装成功!
10.配置Docker镜像仓库
阿里云 (aliyun.com),先注册账号,找到,产品->容器->容器镜像服务ACR,选择镜像加速器。
将里面的代码复制运行即可。
二、镜像和容器
镜像:镜像是一种轻量级、 可执行的独立软件包,来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。
容器:Docker在运行镜像时会创建一个隔离环境,称为容器。
三、常见命令
docker run -d \
--name mysql \
-p 3306:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123 \
mysql
首次运行会在本地寻找镜像,若不存在则在远程镜像源寻找下载并运行。
-d,让容器保持后台运行
--name mysql,给容器起个名字,必须唯一
-p 3306:3306,设置端口映射
-e KEY=VALUE,设置环境变量
最后mysql,指定运行镜像的名字。
镜像命名规范:[repository]:[tag]
四、安装redis
1.docker run --restart=always -p 6379:6379 --name myredis -d redis:6.2.1 --requirepass 123456
--测试连接--
2.docker exec -it myredis bash 交互式进入redis
3.redis-cli
4.auth [密码] 输入密码
5.set k1 v1 测试是否能够使用
六、常用命令
-
docker images:列出本地主机上的镜像
-
docker search 某个镜像名字:列出远程的镜像版本
-
docker pull 某个镜像名字:将某个镜像从远程拉到本地,(默认docker pull 某个镜像名字:latest)
-
docker rmi 某个镜像名字:删除本地某个镜像,默认docker rmi 某个镜像名字:latest)
容器命令
-
docker run -it --name 新名字 镜像名:新建并启动容器。
-
-d:后台运行容器(启动便退出,再次进入exit退出后会后台运行),
-
-i:是以交互模式启动
-
-t:是为它分配一个伪终端(it经常一起使用)
-
-p 端口:容器默认端口:指定一个本机端口映射到容器内端口,使得可以从宿主机访问容器内
-
-P:随机分配映射端口。
-
-v 宿主机目录(文件):容器目录(文件):文件映射,保持容器文件与外部同步
-
docekr run -id --name 新名字 镜像名:不会立即进入容器,exit退出后容器会继续运行
-
docker ps:查看正在运行的docker容器
-
docker ps -a:查看运行中及运行过的容器
-
exit:容器停止退出。
-
ctrl+P+Q:容器不停止退出
-
docker start -i 容器名:交互模式启动容器
-
docker restart 容器名:重启容器
-
docker stop 容器名,docker kill 容器名:关闭容器
-
docker rm 容器名:删除已停止的容器。
-
docker rm -f $(docker ps -a -q),一次删除多个容器
其他命令:
-
docker logs -f -t --tail 数字 容器id。-t加入时间,-f跟随最新的日志打印,--tail是显示后多少条。
-
docker top 容器名:显示容器的进程
-
docker inspect 容器名:查看容器内的细节
-
docker attach 容器名:重新进入正在运行的容器
-
docker exec -it 容器名 shell命令:在已运行的容器执行命令。
-
docker cp 容器名:/路径/文件 /路径:将容器内的文件拷贝到宿主机上