docker
排查分析
# 进入容器的网络命名空间
# 获取容器的命名空间 ID
docker inspect --format "{{.State.Pid}}" wcn7-elasticsearch-1
crictl inspect <container-id> | grep pid
# 进入指定 id 的网络命名空间
nsenter -n -t <pid>
# 一步进入网络ns
nsenter -n -t $(docker inspect --format "{{.State.Pid}}" v2raya)
nsenter -n -t $(crictl inspect -o go-template --template='{{ .info.pid }}' $(crictl ps | grep kube-scheduler | awk '{print $1}'))
# 查找容器在宿主机的 rootfs
docker inspect 4b30b34c8434 | egrep -i mergeddir
docker inspect -f '{{.GraphDriver.Data.MergedDir}}' 4b30b34c8434快速管理
docker exec -it xxxx sh # 进入容器
docker stop $(docker ps -a -q) # 停止全部服务
docker volume ls --format "{{.Name}}" # 列出卷名称
# 查看磁盘使用情况
docker system df
docker system df -v
# 启动
# --net="host"
# --restart=always
# -p 1000:1000
# -e AENV='xxx2'
docker run -it --name test -h test --rm alpine:3.11.6 sh
# 替代 entrypoint 参数
docker run -it --entrypoint sh nginx:1.23.1-alpine
# 更新容器配置
docker update --restart=always nacos镜像管理
# 列出全部镜像:tag
docker images --format "{{.Repository}}:{{.Tag}}"
# 导出
docker save chenwx/app:0.3 > ./app_0.3.tar
gzip ./app_0.3.tar
# build
docker build -t chenwx/app:0.3 -f dockerfile/app.dockerfile .
# 下载并直接推送到目标服务器
docker save ghcr.io/psviderski/unregistry:X.Y.Z | ssh user@server docker loadskopeo
# 下载到本地
skopeo copy --override-arch amd64 --override-os linux \
docker://kong:2.8.1 \
docker-archive:v2raya.tar:mzz2017/v2raya:v2.2.7.4
# 拉取+推送到仓库
skopeo copy --override-arch amd64 --override-os linux \
docker://kong:2.8.1 \
docker://harbor.services.wait/docker.io/kong:2.8.1常用镜像
docker pull alpine:3.11.6
docker pull centos:7.5.1804
docker pull python:3.7.0-slim
docker pull python:3.7.0-alpine
docker pull redis:4.0.10-alpine
docker pull nginx:1.15.1-alpinedockerfile 常用项
ENV LANG "en_US.UTF-8" # 即容器内语言
ENV TZ "Asia/Shanghai" # 时区代理
# proxy
/usr/lib/systemd/system/docker.service
Environment="HTTP_PROXY=http://192.168.0.73:15732"
Environment="HTTPS_PROXY=http://192.168.0.73:15732"
systemctl daemon-reload
systemctl restart docker最后更新于