常用的一些Docker使用技巧
最近更新:2025-08-25
|
字数总计:633
|
阅读估时:3分钟
|
阅读量:次
一、Docker镜像直接推送到远程服务器
unregistry
- 是一个轻量级容器镜像注册表,可直接从Docker守护进程的存储中存储或提取镜像。
- 支持Linux/MacOS使用,目前在Windows中使用需要借助wsl2
1 2 3 4
| docker pussh myapp:latest user@server docker pussh myapp:latest user@server:2222 docker pussh myapp:latest user@server.example.com
|
二、一键load文件夹里的所有镜像
1 2
| ls -F /data/package_3th/*.tar | awk '{cmd="docker load -i "$0;print(cmd);system(cmd)}'
|
1 2 3 4 5 6 7 8 9 10
| import os import sys
if __name__ == "__main__": workdir = '/data/package_3th' os.chdir(workdir) files = os.listdir(workdir) for filename in files: print(filename) os.system('docker load -i %s'%filename)
|
三、如何找出容器启动命令及参数
- 在runlike传递一个容器名称,就会直接打印出该容器的运行命令。
runlike
使用起来非常方便,可以直接通过pip
安装,也可以通过容器方式免安装使用:
1 2 3 4 5
| $ pip install runlike
$ alias runlike="docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike"
|
- 通过容器获取容器的docker run命令/get the docker run by a container
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| docker pull cucker/get_command_4_run_container
echo "alias get_docker_command='docker run --rm -v /var/run/docker.sock:/var/run/docker.sock cucker/get_command_4_run_container'" >> ~/.bashrc \ && \ . ~/.bashrc
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock cucker/get_command_4_run_container [容器名称]/[容器ID]
[root@automlgpu4 bluewhale_dev]# docker pull cucker/get_command_4_run_container Using default tag: latest latest: Pulling from cucker/get_command_4_run_container 8a49fdb3b6a5: Pull complete 0357922e53aa: Pull complete 9676b6d4b964: Pull complete ddbd03ee1059: Pull complete 877a053836a3: Pull complete a68de691a1fb: Pull complete ac3fd788d9e3: Pull complete 51fb85f07a5a: Pull complete Digest: sha256:d3fba2642b3bd30dc8bd7379b18e889c6ad9d76c138ffe870b47b7fb6b9c9e94 Status: Downloaded newer image for cucker/get_command_4_run_container:latest docker.io/cucker/get_command_4_run_container:latest [root@automlgpu4 bluewhale_dev]# docker run --rm -v /var/run/docker.sock:/var/run/docker.sock cucker/get_command_4_run_container bluewhale_dev-pg-1 docker run -d \ --name bluewhale_dev-pg-1 \ --cgroupns host \ --env POSTGRES_PASSWORD="xxx" \ --env TZ=Asia/Shanghai \ --env POSTGRES_USER="xxx" \ --hostname pg \ --label com.docker.compose.config-hash=5a31f16dd78cccc6759eba8ae3183d729013898d96a7b364124fec1efcabf280 \ --label com.docker.compose.container-number=1 \ --label com.docker.compose.depends_on="" \ --label com.docker.compose.image=sha256:1149d285a5f5c4340cefa2211869c3a6b1128ac78974545e0b4fe62d3d0e66a8 \ --label com.docker.compose.oneoff=False \ --label com.docker.compose.project=bluewhale_dev \ --label com.docker.compose.project.config_files=/data/bluewhale/bluewhale_dev/docker-compose.yml \ --label com.docker.compose.project.working_dir=/data/bluewhale/bluewhale_dev \ --label com.docker.compose.service=pg \ --label com.docker.compose.version=2.13.0 \ --log-opt max-size=100m \ --network=bluewhale_dev_looklook_net \ -p 5532:5432/tcp \ --stop-signal SIGINT \ -v /data/bluewhale/bluewhale_dev/data/pg:/var/lib/postgresql/data:rw \ postgres:14-alpine
|
方式三:docker inspect命令
1
| docker inspect <container name> 查看
|
四、whaler-通过镜像导出dockerfile
Whaler
- Whaler 是一个 Go 程序,旨在将 Docker 镜像逆向到创建它的 Dockerfile 中
1 2
| $ alias whaler="docker run -t --rm -v /var/run/docker.sock:/var/run/docker.sock:ro pegleg/whaler"
|
2025-04-28
该篇文章被 sswfive
打上标签:
Docker
归为分类:
云原生