docker安装和简单使用

一、安装docker

1、Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
通过 uname -r 命令查看你当前的内核版本

uname -r

在这里插入图片描述

  1. yum 包更新到最新
sudo yum update

在这里插入图片描述
3、卸载旧版本(如果安装过旧版本的话)

sudo yum remove docker  docker-common docker-selinux docker-engine

4、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的。

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

在这里插入图片描述
5、设置yum源,下面是阿里数据源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

在这里插入图片描述
6、可以查看所有仓库中所有docker版本,并选择特定版本安装。

7.安装docker
$ yum list docker-ce --showduplicates | sort -r
$ sudo yum install docker-ce  #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版17.12.0
$ sudo yum install <FQPN>  # 例如:sudo yum install docker-ce-17.12.0.ce

8、启动并加入开机启动

$ sudo systemctl start docker
$ sudo systemctl enable docker

9、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)

$ docker version

在这里插入图片描述
10、如果之前安装过旧版本的docker,安装会报错:

Transaction check error: file /usr/bin/docker from install of
docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from
package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64 file
/usr/bin/docker-containerd from install of
docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from
package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64 file
/usr/bin/docker-containerd-shim from install of
docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from
package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64 file
/usr/bin/dockerd from install of
docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from
package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64

卸载旧版本的包

sudo yum erase docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64

再次安装docker

$ sudo yum install docker-ce

二、配置镜像加速器
1./etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)

第一种,使用官方中国镜像

{
  "registry-mirrors": [
    "https://registry.docker-cn.com"
  ]
}

第二种,使用阿里云专用镜像
首先,进入阿里云控制台,搜索容器镜像服务在这里插入图片描述

2.重启服务

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

3.查看服务器是否生效
配置加速器之后,如果拉取镜像仍然十分缓慢,请手动检查加速器配置是否生效,在命令行执行 docker info,拉到最底下,如果从结果中看到了如下内容,说明配置成功。

Registry Mirrors:
 https://registry.docker-cn.com/

三、docker镜像简单操作
1.获取镜像
从 Docker 镜像仓库获取镜像的命令是 docker pull。其命令格式为:

docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]

拉取镜像的时候可能会出现以下问题

error pulling image configuration: Get https://dseasb33srnrn.cloudfront.net/

出现这个问题,一般的原因是无法连接到 docker hub,通过:

 systemctl stop docker
echo "DOCKER_OPTS=\"\$DOCKER_OPTS --registry-mirror=http://f2d6cb40.m.daocloud.io\"" | sudo tee -a /etc/default/docker
 service docker restart

然后就能正常使用docker pull
在这里插入图片描述

上面的命令中没有给出 Docker 镜像仓库地址,因此将会从 Docker Hub(https://hub.docker.com/)获取镜像。

从下载过程中可以看到我们之前提及的分层存储的概念,镜像是由多层存储所构成。下载也是一层层的去下载,并非单一文件。下载过程中给出了每一层的 ID 的前 12 位。并且下载结束后,给出该镜像完整的 sha256 的摘要,以确保下载一致性。

2.运行镜像
有了镜像后,我们就能够以这个镜像为基础启动并运行一个容器。以上面的 mysql为例,如果我们打算启动里面的 bash 并且进行交互式操作的话,可以执行下面的命令。

[root@localhost sysconfig]# docker run -it mysql:5.7.28 bash
root@820d3989a81a:/# ls -al /etc/mysql/ total 8 drwxr-xr-x. 4 root
root 94 Oct 17 04:49 . drwxr-xr-x. 1 root root 66 Nov 10 15:17 …
drwxr-xr-x. 2 root root 62 Oct 17 04:49 conf.d lrwxrwxrwx. 1 root
root 24 Oct 17 04:49 my.cnf -> /etc/alternatives/my.cnf
-rw-r–r--. 1 root root 839 Jul 9 2016 my.cnf.fallback
-rw-r–r--. 1 root root 1215 Sep 27 07:17 mysql.cnf drwxr-xr-x. 2 root root 24 Oct 17 04:49 mysql.conf.d

docker run 就是运行容器的命令,我们这里简要的说明一下上面用到的参数。

-it:这是两个参数,一个是 -i:交互式操作,一个是 -t 终端。我们这里打算进入 bash 执行一些命令并查看返回结果,因此我们需要交互式终端。
mysql:5.7.28:这是指用 mysql:5.7.28 镜像为基础来启动容器。
bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 bash。

进入容器后,我们可以在 Shell 下操作,执行任何所需的命令。
最后我们通过 exit 退出了这个容器。

3.列出镜像
要想列出已经下载下来的镜像,可以使用 docker image ls 命令。

在这里插入图片描述列表包含了 仓库名、标签、镜像 ID、创建时间 以及 所占用的空间。
我们可以发现size的大小跟hub里面的大小不一样,原因是hub里边针对的是压缩后的大小,这里显示的是实际大小。
虚悬镜像

<none>    <none>      00285df0df87     5 days ago          342 MB

有时候我们发现了上面的现象,这就是虚悬镜像,使用了docker pull 或者docker build可能会出现这正情况。就是当我们拉取的镜像是在原来的基础上更新的,那么之前的镜像就会变成虚悬镜像。
一般来说,虚悬镜像已经失去了存在的价值,是可以随意删除的,可以用下面的命令删除。

docker image prune

3.删除本地镜像
如果要删除本地的镜像,可以使用 docker image rm 命令,其格式为:

docker image rm [选项] <镜像1> [<镜像2> ...]

删除之前要先删除容器。以下命令查看终止的容器:

docker ps -a

删除容器:

docker rm <容器id>

删除镜像:

docker image rm cd3ed0dfff7e

在这里插入图片描述或者以下命令强制删除镜像:

docker image rm -f <镜像id>

四、docker容器基本操作
1.启动容器

docker run -it tomcat bash

启动一个 bash 终端,允许用户进行交互。
其中,-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上, -i 则让容器的标准输入保持打开。

2.启动已终止容器
使用docker ps -a 查看已经终止的容器,接着利用 docker restart <容器id>命令,直接将一个已经终止的容器启动运行。

2.1.查看正在运行的容器
docker ps

3.守护太运行容器
更多的时候,需要让 Docker 在后台运行而不是直接把执行命令的结果输出在当前宿主机下。此时,可以通过添加 -d 参数来实现。

docker run -p 8081:8080 --name tomcat1 -d tomcat

8081是宿主机端口,8080是容器端口,tomcat1是容器名字,-d,守护态运行。

4.终止容器
可以使用 docker container stop 来终止一个运行中的容器。

docker container stop <容器id>/<容器名字>

5.进入容器
使用exec 命令
-i -t 参数
docker exec 后边可以跟多个参数,这里主要说明 -i -t 参数。
只用 -i 参数时,由于没有分配伪终端,界面没有我们熟悉的 Linux 命令提示符,但命令执行结果仍然可以返回。
当 -i -t 参数一起使用时,则可以看到我们熟悉的 Linux 命令提示符。

 docker exec -it <容器id> bash
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装Docker可以按照以下步骤进行: 1. 首先,确保你的Ubuntu系统是最新的并且已经更新到最新版本。可以通过运行以下命令来更新系统: ``` sudo apt update sudo apt upgrade ``` 2. 接下来,安装Docker的依赖包,包括使用HTTPS来使用仓库: ``` sudo apt install apt-transport-https ca-certificates curl software-properties-common ``` 3. 添加Docker的官方GPG密钥: ``` curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg ``` 4. 将Docker的稳定版仓库添加到系统: ``` echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null ``` 5. 更新apt包索引并安装Docker: ``` sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io ``` 6. 验证Docker是否已成功安装,运行以下命令,输出应该会显示Docker的版本信息: ``` docker --version ``` 至此,你已经成功安装Docker。 接下来是使用Docker的步骤: 1. 使用Docker之前,你需要将当前用户添加到docker用户组中,这样你就可以在不使用sudo的情况下运行Docker命令。运行以下命令将当前用户添加到docker组中: ``` sudo usermod -aG docker $USER ``` 2. 注销并重新登录你的用户以使修改生效。 3. 确认Docker是否能够正常工作,运行以下命令来下载并运行一个简单的容器: ``` docker run hello-world ``` 4. Docker命令通常以`docker`开头,你可以通过运行`docker --help`命令来获取Docker的帮助信息。你也可以在Docker官方文档中查找更多关于Docker使用方法和命令。 希望这些步骤能够帮助你在Ubuntu上安装使用Docker

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值