介绍一下
Docker镜像官网查询 Docker Hub
我这里选着连网在线安装Docker,然后Docker-Compose选着离线安装,因为有些时候可能因为虚拟机版本不同在线安装Docker-Compose可能有问题
Docker连网一键式安装
[root@localhost Users]# uname -r #查看你当前的内核版本 Docker要求CentOS系统的内核版本高于3.10+
3.10.0-1160.el7.x86_64
[root@localhost Users]# sudo yum update #为了保险起见把yum包更新到最新
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.huaweicloud.com
* extras: mirrors.163.com
* updates: mirrors.aliyun.com
http://mirrors.bfsu.edu.cn/centos/7.9.2009/os/x86_64/repodata/repomd.xml: [Errno 14] curl#6 - "Could not resolve host: mirrors.bfsu.edu.cn; Unknown error"
Trying other mirror.
......此处省略......
Complete! # 看到这个就是更新好了, ##其实以上步骤可以不做处理,一般情况没有什么影响
[root@localhost Users]# yum list installed | grep docker #查看是否已安装docker列表
#如果没有查到结果,则说明没有安装过docker;可以直接安装了。如果有安装过不可以用的话需要卸载掉在安装,卸载我这里就不做介绍了
[root@localhost Users]# yum -y install docker #安装Docker,此处报错看docker报错处理办法
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
......此处省略.....
Complete! #看到这个不出意外的话就安装好了
[root@localhost ~]# docker --version #检验安装是否成功,查看他的版本
Docker version 1.13.1, build 7d71120/1.13.1
[root@localhost ~]# systemctl status docker #查看docker服务是否启动
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: inactive (dead)
Docs: http://docs.docker.com
[root@localhost ~]# systemctl start docker #启动docker容器服务
[root@localhost ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: active (running) since Thu 2023-03-30 06:23:16 PDT; 2s ago
Docs: http://docs.docker.com
Main PID: 3080 (dockerd-current)
Tasks: 17
CGroup: /system.slice/docker.service
├─3080 /usr/bin/dockerd-current --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current --default-runtime=docker-runc --exec-opt native.cgroupdriver=systemd --userland-p...
└─3085 /usr/bin/docker-containerd-current -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcon...
......此处省略.....
Hint: Some lines were ellipsized, use -l to show in full.
[root@localhost ~]# vi /etc/docker/daemon.json
#换镜像源国内的加速 网易:{"registry-mirrors": ["http://hub-mirror.c.163.com"]}
#还有一下常见的镜像我这里选择的上面网易的{"registry-mirrors": ["http://hub-mirror.c.163.com","https://registry.docker-cn.com","https://pee6w651.mirror.aliyuncs.com"]}
[root@localhost docker]# systemctl restart docker #重启docker容器服务
[root@localhost /]# docker images #查看本地安装镜像
REPOSITORY TAG IMAGE ID CREATED SIZE
Docker安装报错处理方法
#使用yum -y install docker安装时遇到一下问题解决办法
[root@localhost ~]# yum -y install docker
Loaded plugins: langpacks
There are no enabled repos.
Run "yum repolist all" to see the repos you have.
To enable Red Hat Subscription Management repositories:
subscription-manager repos --enable <repo>
To enable custom repositories:
yum-config-manager --enable <repo>
[root@localhost ~]# cd etc/yum/pluginconf.d
bash: cd: etc/yum/pluginconf.d: No such file or directory
#首先备份/etc/yum.repos.d/CentOS-Base.repo CentOS-Base-163下载地址:http://mirrors.163.com/.help/centos.html
[root@localhost ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#下载对应版本repo文件, 放入/etc/yum.repos.d/(操作前请做好相应备份),下载上传文件不做相应介绍
#运行以下命令生成缓存
[root@localhost ~]# yum clean all
Loaded plugins: fastestmirror, langpacks
Cleaning repos: base extras updates
Cleaning up list of fastest mirrors
[root@localhost ~]# yum makecache
Loaded plugins: fastestmirror, langpacks
Determining fastest mirrors
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/10): base/7/x86_64/group_gz | 153 kB 00:00:00
(2/10): base/7/x86_64/primary_db | 6.1 MB 00:00:07
(3/10): extras/7/x86_64/primary_db | 249 kB 00:00:00
(4/10): extras/7/x86_64/other_db | 149 kB 00:00:00
(5/10): extras/7/x86_64/filelists_db | 276 kB 00:00:02
(6/10): base/7/x86_64/filelists_db | 7.2 MB 00:00:10
(7/10): base/7/x86_64/other_db | 2.6 MB 00:00:07
(8/10): updates/7/x86_64/filelists_db | 11 MB 00:00:17
(9/10): updates/7/x86_64/other_db | 1.3 MB 00:00:01
(10/10): updates/7/x86_64/primary_db | 20 MB 00:00:25
Metadata Cache Created
[root@localhost ~]# reboot # 重新启动虚拟机
离线安装docker -compose
- 官网下载docker-compose的离线包 https://github.com/docker/compose/releases 下载这个docker-compose-linux-x86_64
- 把下载好的docker-compose-linux-x86_64文件放到 /usr/local/bin/ 目录里,
这里的安装位置最好是不要改动
[root@localhost ~]# cd /usr/local/bin/ #进入目录查看文件是否上传成功
[root@localhost bin]# ll
total 53180
-rw-r--r--. 1 root root 54453847 Mar 30 19:19 docker-compose-linux-x86_64
[root@localhost bin]# mv docker-compose-linux-x86_64 docker-compose #修改文件名
[root@localhost bin]# ll
total 53180
-rw-r--r--. 1 root root 54453847 Mar 30 19:19 docker-compose
[root@localhost bin]# sudo chmod +x /usr/local/bin/docker-compose #文件授权
[root@localhost bin]# ll
total 53180
-rwxr-xr-x. 1 root root 54453847 Mar 30 19:19 docker-compose
[root@localhost bin]# docker-compose -v #查看安装是否成功
Docker Compose version v2.17.2
Docker-Compose卸载
如果安装方式如上二进制包方式安装的,需要删除时直接删除二进制文件即可:
sudo rm /usr/local/bin/docker-compose
Docker一些常用的命令
systemctl start docker #启动docker
systemctl stop docker #关闭docker
systemctl restart docker #重启docker
systemctl status docker #查看docker运行状态
systemctl enable docker #设置docker开机自启动
systemctl disable docker #禁止docker开机启动
docker info #显示docker的系统信息,包括镜像和容器的数量
docker version #显示docker的版本信息。
#帮助命令
docker 命令 --help #帮助命令
#镜像命令
docker images #查看所有本地主机上的镜像 可以使用docker image ls代替
docker search #搜索镜像
docker pull #下载镜像 docker image pull
docker rmi #删除镜像 docker image rm
#容器命令
docker run 镜像id #新建容器并启动
docker ps /docker container list #列出所有运行的容器
docker rm 容器id #删除指定容器
#删除所有容器
docker rm -f $(docker ps -aq) #删除所有的容器
docker ps -a -q|xargs docker rm #删除所有的容器
#启动和停止容器
docker start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前正在运行的容器
docker kill 容器id #强制停止当前容器
#退出容器
exit #容器直接退出
ctrl +P +Q #容器不停止退出 ---注意:这个很有用的操作
#其他常用命令
docker run -d 镜像名 #后台启动命令
docker logs #查看日志
docker top 容器id #查看容器中进程信息ps
docker inspect 容器id #查看镜像的元数据
docker exec #进入当前容器后开启一个新的终端,可以在里面操作。(常用)
docker attach # 进入容器正在执行的终端
docker cp 容器id:容器内路径 主机目的路径 #从容器内拷贝到主机上
# Docker 查看某一时间段日志
#语法:
docker logs [OPTIONS] CONTAINER
Options:
--details #显示更多的信息
-f, --follow #跟踪实时日志
--since string #显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟)
--tail string #从日志末尾显示多少行日志, 默认是all
-t, --timestamps #显示时间戳
--until string #显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟)
#eg:查看最近30分钟的日志:
docker logs --since 30m 4a20226c201d(容器ID)
#eg:查看某时间之后的日志:
docker logs -t --since="2023-03-04T20:00:00" CONTAINER_ID
#eg:查看指定时间后的日志,只显示最后100行:
docker logs -f -t --since="2023-03-31" --tail=100 CONTAINER_ID
#eg:查看某时间段日志:
docker logs -t --since="2023-03-31T11:00:00" --until "2023-03-31T15:00:00" CONTAINER_ID
最后
至此便是在虚拟机环境中安装Docker和Docker-Compose的过程,希望能给您带去帮助!!!