理解docker命令

基础命令

帮助命令

docker --help(帮助命令)

用于获取某个命令的帮助信息

#命令帮助
docker 命令 --help

小技巧

换行符 '\'

使用命令换符,可以让繁杂命令变得有条理

#命令换行,使用换行符 \
docker ... \
        ... \

镜像命令

docker pull(拉取镜像)

对于常用镜像可以从官方镜像仓库获取,pull命令拉取到本地镜像仓库

docker pull 镜像名或者镜像名:tag

#注意:如果pull后不指定镜像版本(或叫标签),直接使用镜像名=镜像名:latest,也就是下载最新的-英[ˈleɪtɪst]:最新的
docker pull 镜像名:latest

 docker images(查看镜像)

查看镜像,镜像的英文image,其复数形式images,所以有

#镜像查看
docker images

docker rmi(删除镜像)

那么镜像删除呢?镜像英文image,所以 ‘rm’ +‘i’ 

#镜像删除
docker rmi 镜像名或者镜像id

docker tag(修改镜像名)

如果要修改镜像名(或者叫标签名),使用tag


docker tag 镜像名:tag 新镜像名和tag

docker tag 镜像id 新镜像名和tag

docker save(镜像保存成压缩包)

镜像保存成tar压缩包格式,便于文件传输和使用

docker save -o 文件名.tar 镜像名或者镜像id

docker load (镜像加载)

对于tar压缩包格式的镜像,如果想要加载,需使用此指令

docker load -i 压缩包名.tar

容器命令

docker run(运行容器)

docker容器运行,自然而然想到docker run。那么run的是什么?得到什么呢?如何记忆

运行镜像,得到镜像运行后对应的容器,其相当于执行了两步操作:将镜像放入容器中(docker create),然后将容器启动,使之变成运行时容器(docker start)

#注意:镜像名是镜像名:版本,直接使用镜像名=镜像名:latest
docker -run 镜像名或者镜像id

但是还不够,我们需要给容器命名,所以有--name=容器名

docker run --name=容器名 镜像名或者镜像id

容器命名了,还需要让容器在后台启动,所以有了-d

docker run --name=容器名 -d 镜像名或者镜像id

如果主机重启了,你会发现容器不会重新运行,想开机自启动,所以有--restart=always

docker run --name=容器名 -d --restart=always 镜像名或者镜像id

 容器的私有网络如果想通过主机访问,那么需要主机与容器端口映射, -p 主机端口:容器端口

docker run --name=容器名 -d --restart=always -p 主机端口:容器端口 镜像名或者镜像id

目录挂载,是为了解决docker重启后,之前容器运行的配置或者数据丢失,所以要将主机目录与容器目录做映射,使用 -v参数,注意需要确保主机目录存在,否则挂载不生效

#总结:--name 容器命名,-d 后台启动,--restart 开机自启动,-p 端口映射, -v 目录映射(多个映射使用多个-v)
docker run --name=容器名 -d --restart=always -p 主机端口:容器端口 -v 主机目录:容器目录 镜像名或者镜像id

docker rm(删除容器)

容器删除直接记remove缩写rm

#容器删除,针对已经停止的容器
docker rm 容器名或者容器id

docker ps(查看容器)

查看容器,ps是process status,是在Linux系统中是常用的进程管理命令,这里docker ps与之异曲同工

#正在运行的容器查看
docker ps

#如果要看所有的容器,比如还能看停止的容器
docker ps -a

docker start/stop/restart(启动/停止/重启容器)

启动/停止/重启容器,自然而然想到start/stop/restart

#启动容器
docker start容器名或者容器id

#停止容器
docker stop 容器名或者容器id

#重启容器
docker restart 容器名或者容器id

docker update(更新容器)

容器启动后,如果想要更新运行参数,可以使用update命令

docker update 容器名或者容器id 需要追加的参数

docker exec(进入容器)

-i选项代表使用交互方式,-t代表打开一个终端,/bin/bash作用是进入后启动bash命令支持

docker exec -it 容器名或容器id /bin/bash

docker commit(容器内容修改)

进入到容器后,如果想修改其内容,并重新打成新的镜像

docker commit 镜像名或者镜像id 新镜像名和tag

#参数-a author缩写,-m message缩写
docker commit -a "作者" -m "描述" 镜像名或者镜像id 新镜像名和tag

docker logs(查看容器日志)

有时需要排查容器运行的问题,可以使用logs命令

docker logs 容器名或者容器id

docker cp (主机与容器文件拷贝)

#从容器拷贝到主机
docker cp 容器id:容器文件或目录 主机文件或目录

#从主机拷贝到容器
docker cp 主机文件目录 容器id:容器文件或目录

远程操作

镜像命令

docker login(登录到docker镜像仓库)

docker login -u "用户名" -p "密码" 远程镜像仓库地址(不写默认官方)

 docker logout(退出登录)

docker logout

docker push(推送镜像到远程仓库)

docker push 镜像名或镜像id

待续。。。

你可能感兴趣的:(docker,java,容器)