Docker基本命令

hint:docker镜像库中包含大量可用镜像,可以直接下载到本地使用,常用的镜像库比如https://hub.docker.com/

1.在https://cloud.docker.com,免费注册一个 Docker 账号。用以下命令登录docker hub,输入创建账号的用户名、密码

1
2
3
4
5
6
7
8
9
$ docker login 
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: linlinshe
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

出现login succeeded表示登陆成功

2.将如下内容写入/etc/docker/daemon.json中(没有此文件则需要新建. ps: 需保证docker已经运行过,否则会出现/etc/docker文件夹不存在)

1
2
3
{
"registry-mirrors": ["https://uhub-edu.service.ucloud.cn","https://uhub.service.ucloud.cn","https://registry.docker-cn.com","http://hub-mirror.c.163.com"]
}

hint:可以使用nano命令直接在云主机上编辑daemon.json,使用方法请自行查找。也可以在本地用纯文本编辑器(如txt)编辑,然后上传到云主机。

之后重新启动docker即可

b) 测试Docker是否安装成功

当你的按照上述步骤安装完docker之后,可以通过运行如下命令来测试docker是否安装成功

1
2
3
4
5
$ docker run hello-world

Hello from Docker.
This message shows that your installation appears to be working correctly.
...

3. 尝试使用busybox

到此为止,你的docker环境已经安装完成并且正常运行,接下来我们尝试一些更加复杂的工作

在这个部分,我们将要通过docker run命令去开启一个BusyBox container

a) 首先,我们通过运行如下命令从镜像库拉取BusyBox的镜像:

1
$ docker pull busybox

如果运行过程中遇到 permission denied 此类的错误,可以尝试在命令前加入 sudo 命令

b) pull 命令可以将busybox image从docker仓库中拉取到本地,你可以使用docker image命令查看系统上目前已有的image.

1
2
3
4
$ docker images

REPOSITORY TAG IMAGE ID CREATED VIRT
busybox latest c51f86c28340 4 weeks ago 1.10

c) 我们接下来继续尝试使用docker run命令来运行busybox

1
2
$ docker run busybox
$

d) 可以发现命令运行完,什么也没有发生。这不是bug,当我们执行docker run命令时,docker会从本地查找image,然后加载image生成container容器,并在其中运行command。正因为我们没有运行任何command,此容器没有任何输出。让我们加入自定义的command再试一次。

1
2
$ docker run busybox echo "hello from busybox"
hello from busybox
hint:通常,docker image不在运行时叫image,加载运行以后叫container

Docker基本命令
http://example.com/2023/04/01/Docker基本命令/
作者
John Doe
发布于
2023年4月1日
许可协议