初见Docker

今天准备跑通VDOSLAM的代码,但是现在电脑上的虚拟机装起OpenCV竟然出现各种各样的问题,原工程给出了一个Dockerfile,正好接触以下Docker这个工具;

1 Docker

docker是一个用来装应用的容器,可以把任何想得到的程序放在docker中,就像装水的杯子、装书的背包。
使用上;
①docker解决了运行环境不一致所带来的问题。将一台机器上的运行环境原封不动地运到另一台机器;
②docker可以为用户提供隔离性。在多用户使用一台主机时不会受对方的代码错误影响(死循环),docker启动时以及限定了使用资源;
③快速扩充需要的服务器数量,在急需扩充主机数量时只需按照标准的方法运行即可;

1.1 镜像

镜像即image,本质上来说镜像就是一系列文件,可以包括我们应用程序的文件,也可以包括我们应用的运行环境的文件;

2 安装

2.1 一键安装

使用国内的daocloud:

curl -sSL https://get.daocloud.io/docker | sh

2.2 手动安装(使用 Docker 仓库)

首先需要设置 Docker 仓库,您可以从仓库安装和更新 Docker 。
①卸载旧版本:

sudo apt-get remove docker docker-engine docker.io containerd runc

②更新apt包索引

sudo apt-get update

🌂安装 apt 依赖包,用于通过HTTPS来获取仓库

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

④添加 Docker 的官方 GPG 密钥

curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

⑤验证您现在是否拥有带有指纹的密钥

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]

⑥设置稳定版仓库

sudo add-apt-repository \
   "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
  $(lsb_release -cs) \
  stable"

安装 Docker Engine-Community
⑦再次更新apt包

sudo apt-get update

⑧安装对应版本

sudo apt-get install docker-ce docker-ce-cli containerd.io	// 安装最新版本

也可自己选定需要安装的版本,比如VERSION_STRING取5:20.10.16~ 3-0~ubuntu-bionic

apt-cache madison docker-ce // 显示可用版本
sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io // 下载对应版本

请添加图片描述
⑨测试 Docker 是否安装成功

sudo docker run hello-world

3 使用

3.1 创建镜像

在Dockerfile所在文件夹终端运行以下命令

docker build -t myubuntu:v1 .

其中各个符号的意义为:
docker:docker命令;
build:编译;
🌂**-t**:镜像的名字及tag,通常name:tag或者name格式;可以在一次构建中为一个镜像设置多个tag,参考docker build命令详解;
myubuntu:生成镜像的名称;
v1:生成镜像的版本号;
⑥**.**:指定镜像构建过程中的上下文环境目录,简言之即docker是通过docker命令(客户端工具)与docker引擎交互,真正的事件是在docker引擎中发生的,所以docker引擎需要某个路径下文件的一份拷贝,这个路径即为上下文环境目录,给了docker引擎各项操作需要的内容;

3.2 删除Docker镜像和容器

删除镜像:docker rmi + 镜像ID;
用以下命令可以删除多个镜像:

docker rmi <your-image-id> <your-image-id> ...

同理,删除容器:docker rm + 容器ID;
如果 Docker 容器正在运行,你在删除它们之前需要先停止运行

docker stop $(docker ps -a -q)		// 停止所有容器

4 相关设置

①启动Docker服务

sudo systemctl start docker

②设置开机自启动docker

sudo systemctl enable docker

③查看Docker是否开启,出现绿色圆点表示服务正常开启

sudo systemctl status docker

请添加图片描述

参考文章

1.Ubuntu18.04安装Docker完整教程
2.Ubuntu Docker 安装 | 菜鸟教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值