Docker教程

1.ubuntu本地环境安装docker工具:

sudo apt-get install docker.io #ubuntu终端直接输入安装命令

2.验证docker是否安装成功

sudo docker -v
#或者
sudo docker info

3.Docker的启动

     Docker 是服务器----客户端架构。命令行运行docker命令的时候,需要本机有 Docker 服务。如果这项服务没有启动,可以用下面的命令启动。

sudo service docker start #service命令的用法
sudo systemctl start docker #systemctl命令的用法

4.Docker镜像拉取到本机(ubuntu)

       拉取阿里天池常用的基础镜像BaseImage,image 文件是通用的,一台机器的 image 文件拷贝到另一台机器,照样可以使用。一般来说,为了节省时间,我们应该尽量使用别人制作好的 image 文件,而不是自己制作。即使要定制,也应该基于别人的 image 文件进行加工,而不是从零开始制作。

sudo docker pull  registry.cn-shanghai.aliyuncs.com/tcc-public/pytorch:1.1.0-cuda10.0-py3 #阿里天池的BaseImage

5.拉取镜像成功之后查看/删除本机的image文件

  查看本机的image文件:

sudo docker image ls#查看本机的image文件

  结果:   

删除本机的image文件,[67a02ffc785d即为imageID]例如:sudo docker image  67a02ffc785d:

sudo docker image rmi [imageID]#删除本机image,其中67a02ffc785d为imageID,例 sudo docker image  67a02ffc785d

6.通过Dockerfile文件直接创建image文件

Dockerfile文件里面的内容,FROM后面跟着的是镜像文件。

FROM registry.cn-shanghai.aliyuncs.com/tcc-public/pytorch:1.1.0-cuda10.0-py3
#from后面紧跟着的是镜像
ADD . /competition
#表示把当前文件夹(competition)里的文件构建到镜像的根目录下
WORKDIR /competition
#指定默认工作目录为competition
RUN pip --no-cache-dir install  -r requirements.txt
#安装镜像中所确实的依赖库
CMD ["sh", "run.sh"]
#镜像启动时候执行的命令 sh run.sh

可以通过Dockerfile直接拉取镜像以及工程项目和相关依赖库,其命令为:

sudo docker image build -t tianchi-demo .

参数-t:指定image(镜像)文件的名字,tianchi-demo就是镜像文件的名字

参数 . :其中这个. 表示的是Dockefile的路径,因此在执行这样一个命令的时候,将终端切换到Dockerfile目录下。

 

7.生成容器

      image 文件生成的容器实例,本身也是一个文件,称为容器文件。也就是说,一旦容器生成,就会同时存在两个文件: image 文件和容器文件。而且关闭容器并不会删除容器文件,只是容器停止运行而已。

sudo docker container run -p 8000:3000 -it tianchi-demo  /bin/bash

命令中各参数的含义为:

参数-p:容器的 3000 端口映射到本机的 8000 端口。

参数-it:容器的 Shell 映射到当前的 Shell,然后你在本机窗口输入的命令,就会传入容器。

参数tianchi-demo:image文件的名字,如果有标签还需要提供标签,(例如:有时候在生成image时候有标签,tianchi-                 demo:1.0),如果没有标签的话不谢即可,默认为latest。

参数/bin/bash:容器启动以后,内部第一个执行的命令。这里是启动Bash,保证用户可以使用Shell。

8.列出容器

列出本机正在运行的容器,不过容器:

sudo docker container ls

     

列出本机所有容器,包括终止运行的容器

sudo  docker container ls --all

    

9.终止/删除 容器

不会自己终止的容器,必须使用docker container kill 命令手动终止:

sudo docker container rm [contianerID]

删除指定的容器:

sudo docker container rm [containerID]

10.上传文件到本地的docker容器中

      例如我在本地pull了一个Docker镜像,然后构建了一个容器,现需要往容器内传输文件, 首先需要确定docker容器的container_id,可以使用docker ps -a 查看你要操作的docker容器的container_id。

     sudo docker cp 本机保存文件的全路径 container_id:docker容器全文件路径。

sudo docker cp /home/hsy/桌面/tcdata  4a2f08d2c1f8:/

   11.从本地的docker容器中传到本地系统(Ubuntu)

      sudo docker cp container_id:docker容器内的文件全路径 本机保存文件的全路径

sudo docker cp 4a2f08d2c1f8:/  /home/hsy/桌面

 

 

你可能感兴趣的:(linux学习,Docker的入门,ubuntu)