====== Docker ====== [[wp>docker|Docker]] is a utility to pack, ship and run any application as a lightweight container. ===== Installation ===== Add current user to ''docker'' group: sudo gpasswd -a [user] docker newgrp docker docker info # test its working 配置国内加速镜像 对于使用 systemd 的系统,编辑/新建 /etc/docker/daemon.json 文件: { "registry-mirrors": ["https://registry.docker-cn.com"] } 重启服务器后生效,使用 docker info 可验证是否设置成功。 ===== Usage ===== ==== Image ==== 参考文章:https://yeasy.gitbooks.io/docker_practice/content/image 获取 image: docker pull : 列出所有 images: docker image ls 列出 images 体积: docker system df 删除 image: docker image rm or : 批量删除 的 Docker image: docker image prune **组合技巧** 比如,我们需要删除所有仓库名为 redis 的镜像: docker image rm $(docker image ls -q redis) 或者删除所有在 mongo:3.2 之前的镜像: docker image rm $(docker image ls -q -f before=mongo:3.2) ==== Container ==== docker run Options: * ''-t'' 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上 * ''-i'' 让容器的标准输入保持打开 * ''--rm'' 退出后自动删除该 container * ''-d'' 守护态允许(与 ''-it'' 选项冲突) 操作容器状态(启动、终止和重启) docker container start docker container stop docker container restart 进入后台运行中的容器 docker exec -it bash 如果从这个 stdin 中 exit,不会导致容器的停止。 使用 ''docker attach'' 命令进入容器,退出时会终止容器。 删除 container * ''docker container rm '' 删除一个处于终止状态的容器 * ''docker container prune'' 清理所有处于终止状态的容器 ===== Trick ===== ==== alpine ==== Configurate Chinese mirror repositories: sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories