首页 > 编程知识 正文

docker创建容器命令,Docker命令

时间:2023-05-04 01:24:01 阅读:32530 作者:421

文档映像镜像官方网站

https://hub.docker.com/search? q=detectron2type=image

1、启动docker的命令如下。

docker run-it---- GPU sall---- shm-size=8gb-- name [你的名字] python:3.8 /香蕉山水/bash

2、带路径映射的docker启动命令:

docker run-it---- GPU sall---shm-size=8gb-v精简主机绝对路径]:[映射到容器中的绝对路径--name pythe

示例:

docker run-itd---- GPU sall---shm-size=8gb- v/home/zzk :/home/zzk-- namezzk _ test python 33603.8 /

添加-d的目的是使容器在后台运行,以免因网络断开退出而中断。

完成后,可以使用

docker exec -it zzk_test /香蕉山水/bash再准入。

1、查看NVIDIA驱动信息: nvidia-smi

2、查看cuda版本: nvcc -V

3、查看顾问版本: NVIDIA-docker版本

4、看镜像: docker images

5、cuda版本

base:基于CUDA,包括最合理的依赖项,并且必须手动安装其他依赖项才能部署编译的cuda APP应用程序

基于运行时: base,添加了cuda工具包共享的库

develop :基于运行时,添加了编译工具链、调试工具、头文件和静态库,用于根据源代码编译cuda APP应用程序

6、查看容器显卡信息: nvidia-docker run --rm [镜像ID] nvidia-smi

7、进入docker容器后退出容器:退出

8、杀死一个运行中的容器: docker kill

9、查看docker版本: docker版本

10、docker run hello-world命令执行流程

11、docker可以将APP文件打包到一个镜像中。 以nginx为例,这个镜像中运行着最基本的Linux所需的最小的。 而且上面运行着nginx软件,但是它只是打包好了,我们直接拉着制作就可以了。

12、镜像分层

Nginx、Redis、ES都在同一个Linux上运行。 如果有很多容器,这些容器就会共享一个层。 例如,Nginx、Redis需要c环境时,可以在同一镜像层中创建c环境,使用c的软件共享这一层。

13、卷数据卷——存储数据

容器容易丢失

使容器和宿主机处于映射关系,并将容器中的数据映射到主机。

创建容器时,可以指定容器到宿主机的映射,以便容器生成的数据可以存储在主机上。

14、registry可以建立局域网内部仓库

15、docker pull redis :获取最新的redis镜像

docker pull redis:5 :获取5.0版的redis镜像

16、删除镜像: docker rmi redis:5或docker rmi IMAGE ID

删除容器: docker rm容器名称/容器ID

IMAGE ID是唯一的

17、镜像搜索: docker search [镜像名称]

18、拉动镜像docker pull镜像名称或docker pull镜像名称]:标签

类似: docker pull redis:5

容器

19、查看docker ps :运行中的容器

docker PS--帮助

docker ps -a :显示所有容器

docker ps - l :验证上次运行的容器

docker ps -f status=exited :查看已停止的容器

20、制作容器进入

容器工作时有端口。 这个端口是80

docker run---- namemynginx-p 80:80 nginx ()大写p为随机() ) ) ) ) )。

后面的80是容器中的,映射到外面(水槽主体)的80。 如果外面的80个端口被占用,则可以映射到任何端口。

放入容器中

docker run -

it --name 容器名称 镜像名称:标签 /香蕉山水/bash

-p是指定映射, -P是随机映射

-t是进入之后直接进入命令行

docker run -it --name mynginx(容器名) -p 80:80 nginx(镜像名)

21、守护方式创建线程

docker run -di --name mynginx -p 80:80 nginx

进入容器

docker exec -it 容器名称/容器ID /香蕉山水/bash(相当于cmd的命令行)

cat /etc/nginx/conf.d/default.conf

22、停止与启动容器

docker stop/start 容器名/容器ID

23、文件拷贝

将文件拷贝到容器内-cp

docker cp 需要拷贝的文件或目录 容器名称:容器目录

将文件从容器内拷贝出来

docker cp 容器名称:容器目录 需要拷贝的文件或目录

24、指定目录挂载

docker run -di --name nginx02 -p 81:80 -v nginx (-v:添加目录挂载)

docker run -di --name nginx02 -p 81:80 -v /mydata/docker_nginx/ : /abc/123 nginx(会把宿主机和容器内的文件目录关联起来)

25、匿名挂载

匿名挂载只需要写容器目录即可,容器外对应的目录会在 /var/lib/docker/volumes 中生成

#匿名挂载

docker run -di -v /usr/local/data --name centos7-02 centos:7

#查看 volume 数据卷信息

docker volume ls

docker run -di -v /usr/local/data(容器内的目录) --name nginx05 nginx

26、具名挂载

具名挂载就是给数据卷起了名字,容器外对应的目录会在 /var/lib/docker/volumes 中生成

# 匿名挂载

docker run -di -v docker_centos_data:/usr/local/data --name nginx06 nginx

#查看volume数据卷信息

27、数据卷只读或者读写:

docker run -di --name nginx07 -P -v /mydata/docker_nginx/:/abc:ro nginx

ro : read only rw: read write

28、volumes-from 继承目录卷

# 容器 centos7-01 指定目录挂载

docker run -di -v /mydata/docker_centos/data : /usr/local/data --name 容器名 镜像名

#容器 centos7-04 和 centos7-05 相当于继承 centos7-01 容器的挂载目录

docker run -di --volume-from 要继承的容器名 --name 容器名 镜像名

29、查看目录挂载关系

通过 docker volume inspect 数据卷名称 可以查看该数据卷对应的宿主机的目录地址

30、查看容器的IP地址

docker inspect 容器名称|容器ID

直接输出IP

docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称|容器ID

31、删除容器

# 删除指定容器

docker rm 容器名称|容器ID

#删除多个容器

docker rm 容器名称|容器ID 容器名称|容器ID

32、创建容器并拷贝资源

docker commit:从容器创建一个新的镜像

docker build:配合Dockerfile文件创建镜像

33、构建镜像

docker commit -a="mrhelloworld" -m="jdk11 and tomcat9" 容器名 要构建的镜像名

commit:构建镜像

-a:作者

-m:解释说明

步骤(以centos、jdk、tomcat为例):

1、官网下载centos:7 镜像

2、根据官网创建一个容器

3、将宿主机的jdk和tomcat的资源拷贝进容器

4、在容器内部安装jdk和tomcat

5、将这个已安装的jdk和tomcat的容器重新构建为一个新镜像

Dockerfile常用指令

1、from

语法:from <image>:<tag>

指明构建的新镜像来自于哪个基础镜像,如果没有选择tag,那么默认值为latest

如果不以任何镜像为基础,那写法为FROM scratch。官方说明:scratch镜像是一个空镜像,等于从零开始构建属于自己的镜像

2、ADD

语法:ADD <src>.... <dest>

拷贝文件或目录到镜像中。src可以是一个本地文件或者是一个本地压缩文件,压缩文件会自动解压。还可以是一个URL,如果把src写成一个url,那么ADD就类似于wget命令,然后自动下载和解压。

示例:

ADD jdk-11.0.6_linux_香蕉山水.tar.gz /usr/local/java

3、copy

语法:COPY <src>.....<dest>

拷贝文件或者目录到镜像中。用法同ADD,只是不支持自动下载和解压

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。