一文秒懂Docker概念及使用

首先,在用到Docker之前,还是应该清楚的知道Docker是什么:

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker核心概念:: 镜像(Image),容器(Container),仓库(Repository)

这里贴出我自己在初次学习和使用时看到的一些不错的资源链接:

1:把Docker的概念讲的最清楚的一篇文章:

2:Docker的一些基本概念、安装、使用及命令:

大概花2个小时把上述两个链接的内容看明白,基本上就算对Docker有一个较为详细的了解了。

现在再来说说这里我为什么会用到Docker,小编是搞深度学习这一块的,如今要在服务器进行tf环境的移植,之前自己用到的tensorflow,cafe,nxnet等深度学习架构都是在自己的电脑中配置好,如今公司服务器并没有配置CUDA等常用加速包及其相应环境,自己在跑模型等设计到大型计算时会用到GPU的计算,受英伟达GPU调用的影响,这之前必须配置好你所在机器显卡的CUDA和cudan等等一系列配置,这些配置具有很多变数,有的人在自己机器上可能很快就配置好了,有的人可能需要很长时间也不能解决好,还有人就从入门到放弃了,自己听说之前实习的一家公司有人配置caffe花了一周时间还没解决,而Docker就提供了镜像别人配置好的环境,只需要通过pull 镜像源 就可以把别人配置好的环境拉到自己服务其中,这就大大解决了工程中环境配置的麻烦,然后通过对自己的镜像创建容器,就相当于单独的开辟了一个虚拟机或者linux系统,在这里面,你可以做你想做的任何操作。

好了,自己去试试把,下面贴出pull镜像后,进行容器创建等一些自己总结出来的常见命令:

0.免sudo 方法:
sudo gpasswd -a ${USER} docker  
newgrp - docker

1.创建容器;
sudo docker run -itd \
--name automatting_MxNet_xuzb \ #容器名 不可与之前容器相同
-v /mnt/30_186/Matting_Mxnet:/dim \  #挂载 --- (主机目录绝对路径):(容器内挂在路径)
-v /mnt/30_186/Matting/train_data:/olddimdataset \
--shm-size=64G \  #
-p 8928:8328 \ #容器端口 用于不进容器(终端)调用容器东西
ufoym/deepo:tensorflow-py36-cu100   \ #镜像名
/bin/bash

2.

docker exec -it continar_id(容器名或ID) /bin/bash #开多个控制终端时建议使用

docker attach continar_id (进入没有exit的容器) #退出会关容器


————————————————————————————————————————————————————————————————————————————————
常用操作
删除所有已经停止的容器:docker rm $(docker ps -a -q)

杀死所有正在运行的容器:docker kill $(docker ps -a -q)

查看容器日志:
docker logs <id/container_name>

实时查看日志输出
docker logs -f <id/container_name> (类似 tail -f) (带上时间戳-t)
---------------------------------------------------------------------------
保存镜像:docker commit 698(容器名) learn/ping(自己新建的镜像名)

上传镜像:docker push wy3406/tf-py2:0730 (wy3406必须是docker 的帐号名)
下载镜像: docker pull learn/tutorial(镜像名/版本) #下载镜像
(在迁移docker默认目录时要用)
在sudo -i中:
docker停止:/etc/init.d/docker stop
docker开始:/etc/init.d/docker start

删除所有镜像:docker rmi $(docker images -q)
删除所有未打 dangling 标签的镜像:docker rmi $(docker images -q -f dangling=true)

进入docker.file中
docker build -t 镜像名:版本 .(空格.不能少)
docker build -t 镜像名:版本 -f Dockerfile .(空格.不能少)
------------------------------------------------------------------------------

列出当前所有正在运行的container
docker ps

列出所有的container
docker ps -a  

查看容器内部详情细节:
docker inspect <id/container_name>      /挂载位置等详细信息

### 
1:删除镜像   docker rmi Image_id

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker 是一种容器化技术,可以帮助开发者快速构建、打包、发布和运行应用程序的环境。在安装和使用 Docker 之前,需要先了解 Docker 的基本概念Docker 的基本概念 1. 镜像(Image):Docker 镜像是一个只读的模板,包含了运行应用程序所需要的所有文件、配置和依赖项。 2. 容器(Container):Docker 容器是 Docker 镜像的运行实例,可以被创建、启动、停止、删除、暂停等操作。 3. 仓库(Repository):Docker 仓库是用于存储和分享 Docker 镜像的地方,可以是公共的(如 Docker Hub)或私有的(如自己的服务器)。 Docker 的安装步骤 1. 安装 Docker 在 Ubuntu 系统上,可以使用以下命令安装 Docker: ``` $ sudo apt-get update $ sudo apt-get install docker.io ``` 安装完成后,可以使用以下命令检查 Docker 是否正确安装: ``` $ docker --version ``` 2. 配置 Docker 在安装 Docker 后,需要将当前用户添加到 Docker 用户组中,以便无需使用 sudo 命令也可以运行 Docker 命令: ``` $ sudo usermod -aG docker your_username ``` 需要重新登录才能使修改生效。 3. 运行 Docker 可以使用以下命令启动 Docker: ``` $ sudo systemctl start docker ``` 可以使用以下命令检查 Docker 是否正在运行: ``` $ sudo systemctl status docker ``` Docker 的基本使用 1. 拉取镜像 可以使用以下命令从 Docker 仓库中拉取镜像: ``` $ docker pull image_name ``` 例如,拉取 Ubuntu 镜像: ``` $ docker pull ubuntu ``` 2. 运行容器 可以使用以下命令运行容器: ``` $ docker run image_name ``` 例如,运行 Ubuntu 容器: ``` $ docker run ubuntu ``` 默认情况下,容器会在后台运行,并显示容器 ID。 可以使用以下命令运行交互式容器: ``` $ docker run -it image_name ``` 例如,运行交互式 Ubuntu 容器: ``` $ docker run -it ubuntu ``` 3. 列出容器 可以使用以下命令列出所有正在运行的容器: ``` $ docker ps ``` 可以使用以下命令列出所有容器: ``` $ docker ps -a ``` 4. 停止容器 可以使用以下命令停止容器: ``` $ docker stop container_id ``` 例如,停止容器 ID 为 123 的容器: ``` $ docker stop 123 ``` 可以使用以下命令停止所有正在运行的容器: ``` $ docker stop $(docker ps -q) ``` 5. 删除容器 可以使用以下命令删除容器: ``` $ docker rm container_id ``` 例如,删除容器 ID 为 123 的容器: ``` $ docker rm 123 ``` 可以使用以下命令删除所有容器: ``` $ docker rm $(docker ps -aq) ``` 6. 删除镜像 可以使用以下命令删除镜像: ``` $ docker rmi image_name ``` 例如,删除 Ubuntu 镜像: ``` $ docker rmi ubuntu ``` 可以使用以下命令删除所有镜像: ``` $ docker rmi $(docker images -q) ``` 以上是 Docker 的基本安装和使用方法,更多高级用法可以参考 Docker 官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值