docker安装及使用,常用命令总结

本文详细介绍了在Ubuntu上安装Docker的步骤,包括从官方仓库下载.deb包并使用dpkg安装,以及验证安装成功的操作。同时,文章还讲解了如何通过docker-compose安装额外的工具,并演示了从Docker Hub拉取镜像的过程。接着,阐述了如何基于镜像创建容器,并进行容器的管理和交互。最后,列举了一些常用的Docker命令,帮助读者更好地理解和操作Docker。

1.安装

参考官方教程:https://docs.docker.com/engine/install/ubuntu/
有三种安装方法:
Install using the repositoryInstall from a packageInstall using the convenience script
(1)推荐使用:Install from a package
https://download.docker.com/linux/ubuntu/dists/,选择你想要安装的Ubuntu 版本, 到 pool/stable/目录下, 选择amd64, armhf, arm64, 或者 s390x, 下载符合需要的 .deb 文件。
我是在:
https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/ 下选择的安装包。
(2)然后执行命令:
sudo dpkg -i /path/to/package.deb
其中path/to/package.deb改为你的.deb文件目录
(3)测试安装是否成功
sudo docker run hello-world 尝试运行hello-word镜像
如果可以正常运行不报错,表示安装成功。

*安装好docker顺便安装一下docker-compose(可以不安装,不影响使用)
参考官方文档:https://docs.docker.com/compose/install/
运行命令:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
接着运行:
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
测试:docker-compose –version

2.拉取镜像

docker-hub 官网有很多镜像可以获取,官网地址:
https://hub.docker.com/search?q=&type=image
我们可以在搜索框使用关键词搜索想要的镜像名称,如搜索pcl会出现如下镜像:
请添加图片描述

选择自己需要的镜像,在终端使用命令 docker pull ***(镜像名) 进行拉取。
如果想要拉取一个ubuntu16.04/ubuntu18.04/ubuntu20.04的空镜像,可以直接在终端使用命令:
sudo docker pull ubuntu:16.04
sudo docker pull ubuntu:18.04
sudo docker pull ubuntu:20.04
进行拉取,然后再对空镜像安装我们需要的生产环境。这样的好处是可以针对自己的项目量身定做生产环境。
查看拉取的命令:使用 sudo docker images可以看到本机已有的镜像。

第一列为镜像名称,第二列为镜像标签,第三列为镜像ID,第四列为创建时间,第五列为占用的内存空间。
可以使用镜像名称:标签 获取到一个镜像,也可以使用镜像ID号获取到。

3.根据镜像创建容器

我们的生产环境是在容器中,而容器是根据镜像创建的。
使用sudo docker run -it --name ***(你想命名的容器名称) -v /home/cxy: /work hello-world:latest /bin/bash
其中参数 -it 为:以交互模式运行容器,且为容器重新分配一个伪输入终端;
-name 为命名;
-v 为想要映射的地址,这里将本机上的/home/cxy 目录映射到容器中的/work 目录。为了方便。也可以直接这样做:-v /home/cxy/:/home/cxy 这样在容器中和本机的目录一致,运行代码更方便;
docker run参考教程:https://www.runoob.com/docker/docker-run-command.html
命令运行成功后,你将会直接进入容器中,前面会有个容器号,后面可以通过你的容器名称或者容器号进入此容器。

退出容器可以直接在容器中执行:exit
再次进入已有容器使用命令:docker exec -it **(容器名) env LANG=C.UTF-8 /bin/bash
如果容器没有运行,是进入不了的,在进入容器前确保容器已经在运行的状态中:
使用命令 docker start ***(容器名) //运行容器
使用命令 docker stop ***(容器名) //停止容器

4.在容器内开发

进入容器后就相当于一个独立的环境,容器与容器之间的环境互不影响,根据不同的项目创建不同的容器,可以随意安装你想要的环境。

5.常用命令

(1)查看已有镜像:
sudo docker images
(2)查看已有容器:
sudo docker ps //查看所有容器
sudo docker ps -a //查看所有在运行的容器
sudo docker ps |grep *** //查看有关键字 ***的容器
(3)进入容器:
sudo docker exec -it ***(容器名) env LANG=C.UTF-8 /bin/bash
(4)删除容器:
sudo docker rm ***(容器名) ,删除前要先stop掉 (docker stop ***
(5)删除镜像:
sudo docker rmi ***(镜像名),删除前要停掉所有以此镜像创建的容器
(6)将容器导出为镜像:
使用基础镜像创建了容器后,安装了需要的环境,想要将容器导出为镜像,使用命令:
sudo docker commit ***(容器名) 镜像名:标签
参考:https://www.runoob.com/docker/docker-commit-command.html
慎用docker commit:使用 docker commit 意味着所有对镜像的操作都是黑箱操作,生成的镜像也被称为 黑箱镜像,换句话说,就是除了制作镜像的人知道执行过什么命令、怎么生成的镜像,别人根本无从得知。而且,即使是这个制作镜像的人,过一段时间后也无法记清具体的操作。这种黑箱镜像的维护工作是非常痛苦的。
参考:https://yeasy.gitbook.io/docker_practice/image/commit
建议使用docker file 制作镜像:https://yeasy.gitbook.io/docker_practice/image/build

更多常用命令参考:https://www.runoob.com/docker/docker-command-manual.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值