Docker小白入门-安装、简单使用

1. 安装

1.1.使用Docker仓库进行安装

# 1. 更新 apt 包索引
sudo apt-get update

# 2. 安装 apt 依赖包,用于通过HTTPS来获取仓库
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

# 3. 添加 Docker 的官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# 4. 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 通过搜索指纹的后8个字符,验证您现在是否拥有带有指纹的密钥
sudo apt-key fingerprint 0EBFCD88

# pub   rsa4096 2017-02-22 [SCEA]
#       9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
# uid           [ unknown] Docker Release (CE deb) <docker@docker.com>
# sub   rsa4096 2017-02-22 [S]

# 5. 使用以下指令设置稳定版仓库
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"

1.2. 安装 Docker Engine-Community

# 1. 更新 apt 包索引
sudo apt-get update

# 2. 安装最新版本的 Docker Engine-Community 和 containerd ,或者转到下一步安装特定版本
sudo apt-get install docker-ce docker-ce-cli containerd.io

# 3. 测试 Docker 是否安装成功,输入以下指令
sudo docker run hello-world

打印出以下信息则安装成功: 

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Pull complete                                                                                                                                  Digest: sha256:c3b4ada4687bbaa170745b3e4dd8ac3f194ca95b2d0518b417fb47e5879d9b5f
Status: Downloaded newer image for hello-world:latest


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


To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

 

2. 镜像加速

在配置文件 /etc/docker/daemon.json 中加入

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

重新启动 docker即可:

sudo systemctl restart docker

 

3. 获取镜像

# 如果我们本地没有 ubuntu 镜像,我们可以使用 docker pull 命令来载入 ubuntu 镜像
docker pull ubuntu:18.04

# 查看已拉取的docker镜像
sudo docker images

# REPOSITORY          TAG                 IMAGE ID            CREATED          SIZE
# ubuntu              18.04               ccc6e87d482b        3 weeks ago    64.2MB
# hello-world         latest              fce289e99eb9        13 months ago  1.84kB

# 选择镜像,这里选择ubuntu:18.04
docker run -it ubuntu:18.04 /bin/bash

参数说明:

  • -i: 交互式操作。
  • -t: 终端。
  • ubuntu: ubuntu 镜像。
  • /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
# 要退出终端,直接输入 exit
exit

 

4. 容器的简单使用

登录服务器后:

# 查看所有的容器
docker ps -a

# 进入容器, 推荐使用docker exec(退出容器终端,不会导致容器的停止), 
#              而docker attach(退出容器终端,会导致容器的停止)
docker exec -it <容器 ID> /bin/bash

# 停止容器
docker stop <容器 ID>

# 使用 docker start 启动一个已停止的容器
docker start b750bbbcfd88 

# 停止的容器可以通过 docker restart 重启
docker restart <容器 ID>

5. 导出和导入容器

5.1 导出容器

docker export 1e560fca3906 > ubuntu.tar

5.2 导入容器快照

# Method1:可以使用 docker import 从容器快照文件中再导入为镜像,以下实例将快照文件 ubuntu.tar 导入到镜像 test/ubuntu:v1
cat docker/ubuntu.tar | docker import - test/ubuntu:v1

# Method2:通过指定 URL 或者某个目录来导入
docker import http://example.com/exampleimage.tgz example/imagerepo

6. 删除容器

# 删除容器使用 docker rm 命令
docker rm -f 1e560fca3906

# 下面的命令可以清理掉所有处于终止状态的容器
docker container prune

 

7.虚悬镜像(dangling images)

# show dangling images:
$ docker image ls -f dangling=true

# delete dangling images:
$ docker image prune

8.Docker容器与本机之间的文件拷贝

1. 查看CONTAINER ID:

$ docker ps -a 

2.拷贝指定文件,e.g. 将当前目录中的demo.txt文件拷贝到47f9ec58e29a容器的/home/uzii/demo文件夹中:

$ docker cp demo.txt 47f9ec58e29a:/home/uzii/demo

Reference:

1. https://www.runoob.com/docker/ubuntu-docker-install.html

2. https://mirrors.ustc.edu.cn/help/dockerhub.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值