Linux 下的 Docker 安装与使用
概述
Docker 是世界领先的软件容器平台。开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用 Docker 可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用 Docker 可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为 Linux 和 Windows Server 应用发布新功能。
简单的说:
Docker 是一个开源的应用容器引擎;是一个轻量级容器技术;
Docker 支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;
运行中的这个镜像称为容器,容器启动是非常快速的;
Docker的几个核心的概念
docker主机(Host)
:安装了Docker程序的机器(Docker直接安装在操作系统之上);
docker客户端(Client)
:连接docker主机进行操作;
docker仓库(Registry)
:用来保存各种打包好的软件镜像;
docker镜像(Images)
:软件打包好的镜像;放在docker仓库中;
docker容器(Container)
:镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用
下面的图,可以比较直观的表述他们之间的关系
下面,我们以Linux,CentOS 8 为例,按照最新的官网的步骤,对docker CE 社区版进行安装:《英文官网linux-centos安装链接》
一、安装与配置
1. 安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
2. 设置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3. 安装 Docker-CE
- 重建 Yum 缓存。
- 安装 Docker-CE ,请执行一下命令进行安装:
yum install docker-ce
4. 启动 Docker-CE
systemctl start docker
5. 设置默认开机启动
systemctl enable docker
二、卸载
1. 卸载 Docker Engine
yum remove docker-ce
2. 删除所有镜像、容器和卷(机上的映像、容器、卷或自定义配置文件不会自动删除。)
rm -rf /var/lib/docker
rm -rf /var/lib/containerd
三、Docker 常用命令
1. 拉取镜像
docker pull
2. 删除容器
docker rm <容器名 or ID>
3. 查看容器日志
docker logs -f <容器名 or ID>
4. 查看正在运行的容器
docker ps
docker ps -a # 为查看所有的容器,包括已经停止的。
5. 删除所有容器
docker rm $(docker ps -a -q)
6. 停止、启动、杀死指定容器
docker start <容器名 or ID> # 启动容器
docker stop <容器名 or ID> # 启动容器
docker kill <容器名 or ID> # 杀死容器
7. 查看所有镜像
docker images
8. 拉取镜像
docker pull <镜像名:tag>
# 例如以下代码
docker pull sameersbn/redmine:latest
9. 后台运行
docker run -d <Other Parameters>
# 例如
docker run -d -p 127.0.0.1:33301:22 centos6-ssh
10. 暴露端口
**# 一共有三种形式进行端口映射
docker -p ip:hostPort:containerPort # 映射指定地址的主机端口到容器端口
# 例如:docker -p 127.0.0.1:3306:3306 映射本机3306端口到容器的3306端口
docker -p ip::containerPort # 映射指定地址的任意可用端口到容器端口
# 例如:docker -p 127.0.0.1::3306 映射本机的随机可用端口到容器3306端口
docer -p hostPort:containerPort # 映射本机的指定端口到容器的指定端口
# 例如:docker -p 3306:3306 # 映射本机的3306端口到容器的3306端口**
11. 映射数据卷
docker -v /home/data:/opt/data # 这里/home/data 指的是宿主机的目录地址,后者则是容器的目录地址
四、安装 Compose
1. 运行此命令以下载 Docker Compose 的当前稳定版本:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
要安装不同版本的 Compose,请替换1.29.2 为您要使用的 Compose 版本。
2. 对二进制文件应用可执行权限:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
注意:如果docker-compose安装后命令失败,请检查您的路径。您还可以/usr/bin在路径中创建指向或任何其他目录的符号链接。
3. 创建软连接:
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
4. 测试安装:
$ docker-compose --version
docker-compose version 1.29.2, build 1110ad01