镜像操作
build
使用dockerfile方式创建镜像
使用dockerfile文件docker build dockerflle/,dockerfile文件默认位于dockerflle/Dockerfile
可以在这里设置cgroup
commit
通过容器创建本地镜像。注意:如果要push到docker hub中,注意生成镜像的命名。
docker commit 容器id 镜像名
docker commit 536f0efeeef3 centostttt
export
将容器的文件系统打包成tar文件
有两种方式:
docker export -o mysqldb1.tarmysqldb
docker export mysqldb >mysqldb.tar
history
显示镜像制作的过程,相当于dockfile
docker history centostttt
IMAGE CREATED CREATED BY SIZE COMMENT
f2bb8fe139f0 46 minutes ago /bin/bash 1.671MB
8da04c5a9351 56 minutes ago /bin/sh -c #(nop) ENV PWD=/root/ 0 B
77d730816eed 56 minutes ago /bin/sh -c #(nop) ENV PATH=/usr/local/sbin:/ 0 B
3bee3060bfc8 13 days ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0 B
<missing> 13 days ago /bin/sh -c #(nop) LABEL name=CentOS Base Ima 0 B
<missing> 13 days ago /bin/sh -c #(nop) ADDfile:d22a9c627d1d1f32a8 192.5 MB
images
列出本机的所有镜像
import
根据tar文件的内容新建一个镜像,与之前的export命令相对应
docker import mysqldb.tar mysql:v1
eb81de183cd94fd6f0231de4ff29969db822afd3a25841d2dc9cf3562d135a10
load
与save命令相对应,将sava命令打包的镜像通过load命令导入
pull
从docker hub中下载镜像
push
将本地的镜像上传到docker hub中
前提是要先用docker login登录上,不然会报错误
rmi
删除镜像
save
将镜像打包,与上面的load命令相对应
docker save -o nginx.tar nginx
search
从Docker Hub中搜索镜像
tag
对镜像进行重命名
容器生命周期
attach
将终端依附到容器上
docker attachb7a7c4bef5a5
create
创建一个容器。注意,此时,容器的status只是Created
可以在这里设置cgroup【CPU、内存、IO等等】、Capability、namespace、volume等等
docker create -c 2(最少2) --cpuset-cpus 0,2 -m 32m --memory-swap 0-w /root/(更换目录) --blkio-weight 10 --dns 114.114.114.114--name nginx8(容器名称) -p 宿主机端口:容器端口 -v 宿主机目录:容器目录--cpu-period 1000 --expose 22 --shm-size 32m -ti centos6:nginx
exec
用于容器启动后,执行其它的任务。
通过exec命令可以创建两种任务:后台型任务和交互型任务
后台型任务:
docker exec -d cc touch 123 其中cc是容器名
交互型任务:
docker exec -i -t cc /bin/bash
ls
123bin boot devetc home liblib64 media mntopt proc rootrun sbin srvsys tmp usrvar
inspect
用于查看容器的配置信息,包含容器名、环境变量、运行命令、主机配置、网络配置和数据卷配置等。
docker inspect 容器ID或者容器ID列表
返回一个列表(包含字典)
kill
强制终止容器。
参数-s或--signal string:Signal to send to thecontainer (default "KILL")
logs
用于查看容器的日志,它将输出到标准输出的数据作为日志输出到docker logs命令的终端上。常用于后台型容器
pause
暂停容器内的所有进程,此时,通过dockerstats可以观察到此时的资源使用情况是固定不变的,通过docker logs -f也观察不到日志的进一步输出。
port
查看容器端口与宿主机端口的映射情况
docker port blog
80/tcp -> 0.0.0.0:80
容器blog的内部端口80映射到宿主机的80端口,这样可通过宿主机的80端口查看容器blog提供的服务
ps
列出所有容器,其中dockerps用于查看正在运行的容器,ps -a则用于查看所有容器。
rename
更改容器的名字
restart
重启容器
rm
删除容器,注意,删除一个运行中的容器,必须加-f参数
如果要一次性删除所有容器,可使用docker rm -f `docker ps -a -q`,其中,-q指的是只列出容器的ID
run
让创建的容器立刻进入运行状态,该命令等同于docker create创建容器后再使用docker start启动容器
可以在这里设置cgroup【CPU、内存、IO等等】、Capability、namespace、volume等等
start
启动容器
stats
动态显示容器的资源消耗情况,包括:CPU、内存、网络I/O
stop
停止一个运行的容器
top
查看容器中正在运行的进程
unpause
恢复容器内暂停的进程,与pause参数相对应
wait
捕捉容器停止时的退出码
执行此命令后,该命令会“hang”在当前终端,直到容器停止,此时,会打印出容器的退出码。
update
Updateconfiguration of one or more containers
升级一个或者多个容器配置,主要是cgroup
容器文件系统
cp
在容器和本地文件系统上拷贝文件【夹】
docker cp [OPTIONS]CONTAINER:SRC_PATH DEST_PATH|-
dockercp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
docker cp tta49d7ca21839:/root/
docker cpa49d7ca21839:/root/test/ ./
diff
对比容器的文件变化情况
dockerdiff a49d7ca21839
volume
Manage Dockervolumes
其他
events
实时或者指定时间戳输出Docker服务器端的事件,包括容器的创建,启动,关闭等。
info
查看docker的系统信息
login
登录到自己的Dockerregister,需有Docker Hub的注册账号
docker login
Username: ivictor
Password:
Email: xxxx@foxmail.com
WARNING: login credentials saved in /root/.docker/config.json
Login Succeeded
logout
退出登录
docker logout
Remove logincredentials for https://index.docker.io/v1/
version
查看docker的版本
network
Manage Dockernetworks
docker网络管理
node
Manage DockerSwarm nodes
service
Manage Docker services
swarm
Manage DockerSwarm
区别
stop和kill、wait
当用docker stop命令来停掉容器时,docker默认会允许容器中的应用程序有10秒的时间用以终止运行。在docker stop命令执行时,会先向容器中PID为1的进程(main process)发送系统信号SIGTERM,然后等待容器中的应用程序终止执行,如果等待时间达到设定的超时时间,或者默认10秒,会发送SIGKILL的系统信号强行kill掉进程。在容器中的应用程序,可以选择忽略和不处理SIGTERM信号,不过一旦达到超时时间,程序就会被系统强行kill掉,因为SIGKILL信号是直接发往系统内核的,应用程序没有机会去处理它。
默认情况下,dockerkill命令不会给容器中的应用程序有任何gracefully shutdown的机会。它会直接发出SIGKILL的系统信号,以强行终止容器中程序的运行。
docker wait捕捉容器停止时的退出码。执行此命令后,该命令会“hang”在当前终端,直到容器停止,此时,会打印出容器的退出码。
run和create、start
create只是创建容器,没有启动。可以配置cgroup
start是启动容器
run是创建并启动容器,run=create+start。可以配置cgroup
exec和attach
exec
在启动的容器上执行命令,可以分为后台和交互式。
交互式执行类似attach,但退出之后不会结束容器。
attach
在容器上附属一个终端,退出之后可能会结束容器(容器启动命令为/etc/bash)
分享到:
相关推荐
软件介绍: 如果你从官方下载软件比较慢,可以使用这个docker1.12离线安装包docker-engine_1.12.3-0-xenial_amd64.deblibltdl7_2.4.6-1_amd64.deb
containerd.io-1.2.6-3.3.el7.x86_64.rpm docker-ce-19.03.2-3.el7.x86_64.rpm docker-ce-cli-19.03.2-3.el7.x86_64.rpm ``` 使用`yum`命令进行本地安装: ``` [root@localhost docker-ce.19.3]# yum -y local...
说明:在最小化CentOS Linux release 7.6.1810 中制作yum源,docker-ce是centos 7系统x86架构rpm包。 使用: 1、上传文件到/data/docker-ce解压,或者任意目录后修改docker-ce-26.1.0.repo 中baseurl路径。 2、mv ...
DockerToolbox-19.03.1.exe
Docker version 1.12.6 mac os 10.11.6
docker-compose 创建并运行 docker-compose up -d 停止docker docker-compose stop 删除docker docker-compose rm --all
离线环境下,在centos7.6系统上安装docker-ce-19.03,nvidia-docker2.4版本,其中docker-ce-19.03在docker-local.tar压缩文件里面,nvidia-docker2在nvidia-docker2.zip文件中。 具体安装流程如下: 1.安装docker ...
这里准备了一份docker-ce-v18的离线包供下载。 也可以自己手动下载最新包,下载方法如下: mkdir /apps/docker-ce-v18 yum install --downloadonly --downloaddir=/apps/docker-ce-v18 \ yum-utils device-...
3. 启动并启用NVIDIA Docker插件:`sudo systemctl start nvidia-docker-plugin && sudo systemctl enable nvidia-docker-plugin` 4. 验证安装:`docker run --rm --gpus all nvidia/cuda:10.0-base nvidia-smi` ...
Docker Compose 用于运行docker-compose命令 Kitematic,Docker GUI 为Docker命令行环境预先配置的Docker QuickStart shell Oracle VM VirtualBox 由于Github下载比较慢,这里我把该安装包下载下来以方便
docker docker-compose部署harbor
centos7.4+ nvidia-docker2 安装所需要的必备包之一 libnvidia-container-tools-1.0.2-1.x86_64.rpm libnvidia-container1-1.0.2-1.x86_64.rpm nvidia-container-runtime-2.0.0-3.docker18.09.6.x86_64.rpm nvidia-...
解压上传到服务器 安装docker sh install.sh docker-18.03.1-ce.tgz 卸载docker sh uninstall.sh 安装docker-compose sh docker-compose.sh docker-compose-Linux-x86_64 如有不明白的欢迎随时咨询
这可能意味着压缩包内包含了一个文件夹,其中可能存放了Docker Compose的二进制文件,例如`docker-compose`可执行文件,以及其他可能的配置文件或文档。用户在解压后,通常需要将`docker-compose`放到系统的PATH环境...
docker-compose压缩包,将下载的docker-compose文件放到`/usr/local/bin`目录下 ```shell cd /usr/local/bin #进入上述目录,对文件重命名,然后赋予执行权限 mv docker-compose-Linux-x86_64 docker-compose sudo ...
Ubuntu 18.04 离线安装 docker17.05.0-ce 安装包,亲测成功: 安装步骤: 1. 将本文件夹中的 4 个文件放到 Ubuntu 任意一个文件中(一般用户目录下) 2. 运行这行命令离线安装 docker: dpkg -i *.deb 3. 运行这行...
docker-ce-17.03.2.ce-1.el7.centos.x86_64 Centos7 离线安装包和依赖包、 audit-libs-python-2.7.6-3.el7.x86_64.rpm checkpolicy-2.5-4.el7.x86_64.rpm docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm docker-ce-...
docker-compose-linux-x86-64-2.3.3
docker平台在win10家庭版上不能安装,需要下载docktertoolbox,但是官网下载太慢,特此提供此资源!希望对大家有帮助,谢谢!