docker 删除容器
一般情况下删除容器,需要先将容器stop(docker container stop containerID),然后才能删除(docker container rm containerID)。
可以使用 -f 选项强制删除: docker container rm -f containerID
docker 删除已经停止的容器
docker container rm $(docker ps -qa)
docker容器停止后自动删除
在执行docker [container] run 的时候添加--rm 标记,则容器在停止后会立刻删除。注意--rm和-d不能同时使用。
查看container的日志
当容器在后台运行时,需要查看日志可以使用命令 docker logs containerID进行查看。
往容器中拷贝文件或文件夹
将主机当前目录下的elasticsearch文件夹目录拷贝到es-data1容器/usr/share/elasticsearch/plugins/的目录下:
docker cp ./elasticsearch es-data1:/usr/share/elasticsearch/plugins/
将主机/www/runoob目录拷贝到容器96f7f14e99ab中,目录重命名为www:
docker cp /www/runoob 96f7f14e99ab:/www
从容器中拷贝文件夹到主机中
将容器96f7f14e99ab的/www目录拷贝到主机的/tmp目录中:
docker cp 96f7f14e99ab:/www /tmp/
镜像清理
使用Docker一段时间后,系统中可能会遗留一些临时的镜像文件,以及一些没有被使用的镜像,可以通过docker image prune命令来进行清理。
保存镜像
如果要到处镜像到本地文件,可以使用docker [image] save 命令。该命令支持 -o、-output string参数,导出镜像到指定的文件中。例如:
docker save -o ubuntu_18.04.tar ubuntu:18.04
保存时,最好使用image name方式,否则如果使用imageid保存,导入的时候出现<none>的情况
导入镜像
可以使用docker [image] load 将导出的tar文件再导入到本地镜像库。支持 -i、-input string选项,从指定文件中读入镜像内容。例如,从文件ubuntu_18.04.tar导入镜像到本地镜像列表,如下所示:
docker load -i ubuntu_18.04.tar
或者
docker load < ubuntu_18.04.tar
这将导入镜像及其相关的元数据信息(包括标签等)。导入成功后,可以使用docker images 命令进行查看,与原镜像一致。
导出镜像
sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
tomcat latest 78b258e36eed 10 days ago 463MB
ubuntu xenial 5e8b97a2a082 5 months ago 114MB
docker save -o ~/tomcat.tar 78b258e36eed
修改镜像名称
docker tag IMAGEID(镜像id) REPOSITORY:TAG(仓库:标签)
例如:
docker tag ca1b6b825289 registry.cn-hangzhou.aliyuncs.com/xxxxxxx:v1.0
修改容器名称
docker container rename <my_container> <my_new_container>
更新容器的--restart always
docker container update CONTAINER_NAME --restart always
修改主机名
docker run -it --name my_container --hostname server001 busybox
使用docker-compose启动某个服务
首先到docker-compose.yml文件夹,然后执行:
docker-compose up -d 服务名1 服务名2