目录

Linux-下的-Docker-安装与使用

Linux 下的 Docker 安装与使用

一、安装与配置

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 

查看版本

yum list docker-ce –showduplicates|sort -r

可以看到

https://i-blog.csdnimg.cn/direct/c2b7e3319ae84f148ff0b00daf9c0ac2.png

选择指定版本安装

安装,下面是两个版本的

yum install docker-ce-18.06.1.ce-3.el7 docker-ce-selinux-18.06.1.ce-3.el7 -y

yum install docker-ce-26.1.3-1.el7 docker-ce-selinux-26.1.3-1.el7 -y

4.启动 Docker-CE

systemctl enable docker ##设置自动启动

systemctl start docker

5.[可选] 为 Docker 建立用户组

docker 命令与 Docker 引擎通讯之间通过 UnixSocket ,但是能够有权限访问 UnixSocket 的用户只有 root 和 docker 用户组的用户才能够进行访问,所以我们需要建立一个 docker 用户组,并且将需要访问 docker 的用户添加到这一个用户组当中来。

  1. 建立 Docker 用户组

sudo groupadd docker

2.添加当前用户到 docker 组

sudo usermod -aG docker $USER

6.镜像加速配置

这里使用的是 ,登录并且设置密码之后在左侧的 Docker Hub 镜像站点 可以找到专属加速器地址,复制下来。

然后执行以下命令:

mkdir -p /etc/docker

进入目录 vi daemon.json 写入如下内容保存

{
  "registry-mirrors":
   [
     "https://docker.mirrors.sjtug.sjtu.edu.cn",
      "https://docker.m.daocloud.io",
      "https://docker.itelyou.cf",
      "https://noohub.ru",
      "https://docker.fxxk.dedyn.io",
      "https://huecker.io",
      "https://dockerhub.timeweb.cloud",  
      "https://registry.cn-hangzhou.aliyuncs.com"
   ]
}

之后重新加载配置,并且重启 Docker 服务

systemctl daemon-reload

systemctl restart docker

二、配置 Docker 容器与镜像

1.拉取镜像

拉取微软在 Docker 上的 aspnetcore 镜像:

docker pull microsoft/aspnetcore

之后执行以下命令查看是否拉取成功:

docker images

https://i-blog.csdnimg.cn/direct/59a0f27703f94d58a26aee88dab6bd8f.png

三、Docker 常用命令

1.拉取镜像

docker pull

2.删除容器

docker rm 容器名称

3.查看容器日志

docker logs -f

4.查看正在运行的容器

docker ps

docker ps -a # 为查看所有的容器,包括已经停止的。

5.删除所有容器

docker rm $(docker ps -a -q)

6.停止、启动、杀死指定容器

docker start # 启动容器

docker stop # 启动容器

docker kill # 杀死容器

7.查看所有镜像

docker images

8.拉取镜像

docker pull

例如以下代码

docker pull sameersbn/redmine:latest

9.后台运行

docker run -d

例如 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 指的是宿主机的目录地址,后者则是容器的目录地址

四、GUI 管理配置

这里推荐使用 Portainer 作为容器的 GUI 管理方案。

官方地址:

安装命令:

docker volume create portainer_data
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

访问你的 IP:9000 即可进入容器管理页面。

如下:

https://i-blog.csdnimg.cn/direct/b1ef38e365834a37a707c0edc93e3a96.png

https://i-blog.csdnimg.cn/direct/91b88ed6833e4a73a953f0c691d8ccf8.png