clhiker
竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生!
Home
Categories
Archives
Tags
About
Home
十个命令开始玩转docker
十个命令开始玩转docker
取消
十个命令开始玩转docker
由
clhiker
发布于 2021-12-05
·
最后更新:2026-03-18
### 从十条docker命令开始 ```bash // 拉取一个Ubuntu18.04 的镜像并创建一个con_name 的容器并进入容器 docker run --name -i -t ubuntu:18.04 /bin/bash // 离开容器,离开后容器关闭 exit // 增删改查 docker images // 查看有哪些镜像 docker ps -a // 查看有哪些容器 docker rmi image_name // 删除镜像 docker stop con_name // 停止容器 docker rm con_name // 删除容器 // 打开并连接容器 docker start con_name docker attach con_name // 主机和容器之间的文件拷贝 docker host_file_path con_name:/copy_to_path docker con_name:/copy_from_path host_path ``` ### 之后包括 - 设置守护进程 - 备份迁移docker - 下载官方的特殊镜像 - ...... # docker 常见命令 ```bash # 列出所有容器ID docker ps -aq # 查看所有运行或者不运行容器 docker ps -a # 停止所有的container(容器),这样才能够删除其中的images: docker stop $(docker ps -a -q) 或者 docker stop $(docker ps -aq) # 如果想要删除所有container(容器)的话再加一个指令: docker rm $(docker ps -a -q) 或者 docker rm $(docker ps -aq) # 查看当前有些什么images docker images # 删除images(镜像),通过image的id来指定删除谁 docker rmi <image id> # 想要删除untagged images,也就是那些id为的image的话可以用 docker rmi $(docker images | grep "^<none>" | awk "{print $3}") # 要删除全部image(镜像)的话 docker rmi $(docker images -q) # 强制删除全部image的话 docker rmi -f $(docker images -q) # 从容器到宿主机复制 docker cp tomcat:/webapps/js/text.js /home/admin docker cp 容器名: 容器路径 宿主机路径 # 从宿主机到容器复制 docker cp /home/admin/text.js tomcat:/webapps/js docker cp 宿主路径中文件 容器名 容器路径 # 删除所有停止的容器 docker container prune # 删除所有不使用的镜像 docker image prune --force --all或者docker image prune -f -a # 创立docker时进行端口转发 docker -it --name test -p 8022 /bin/bash # 退出但不关闭容器 Ctrl + p + q 快捷键 # 重命名容器 docker rename old_container_name new_container_name # 连接一个没有启用交互式终端的容器 sudo docker exec -it container_name /bin/bash ``` ## 将docker 用户加入用户组 ```bash 1. 创建docker用户组 sudo groupadd docker 2. 应用用户加入docker用户组 sudo usermod -aG docker clhiker 3. 重启docker服务 sudo systemctl restart docker ``` ## 2025 docker 新配置 ### 本地配置 1. 更新NVidia 驱动,并安装Nvidia-docker2 ```bash ### 安装最新驱动 sudo apt remove libnvidia-* libnvidia-egl-wayland1 -y sudo apt autoremove -y sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update sudo apt install nvidia-driver-xxx (目前最新565) sudo reboot ### 安装Nvidia-docker2 distribution=$(. /etc/os-release;echo $ID$VERSION_ID) && curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - && curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list sudo apt update sudo apt install nvidia-docker2 sudo systemctl restart docker ``` 2. 创建一个包含nvidia驱动的docker ```bash sudo docker run --gpus all --name yqw -it -p 10086:3610 nvidia/cuda:12.6.3-cudnn-devel-ubuntu22.04 /bin/bash ``` ## 初始化容器配置 start.sh ```bash #!/bin/bash apt install bash-completion -y source /etc/bash_completion apt update apt upgrade -y apt install vim gcc g++ cmake gdb openssh-server net-tools -y ``` ## docker 更换镜像源(不断更新,可能过期)2025-03-31 ```bash # 创建目录 sudo mkdir -p /etc/docker # 写入配置文件 sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": [ "https://docker-0.unsee.tech", "https://docker-cf.registry.cyou", "https://docker.1panel.live" ] } EOF # 重启docker服务 sudo systemctl daemon-reload && sudo systemctl restart docker ``` > **注意不要使用代理(关闭代理)** ## 用自己的服务器搭建私有 docker registry 首先在服务器拉取docker,要拉取的镜像名报错到 images.txt中 > 本地和服务器的docker中需要信任 register /etc/docker/daemon.json ```json { "insecure-registries" : ["ip:5000"] } ``` sudo systemctl restart docker 1. 启动 register ```shell docker run -d --restart=always -p 5000:5000 --name registry registry:2 ``` 2. 推送脚本 ```shell #!/usr/bin/env bash while read -r img; do docker pull "$img" name=$(echo "$img" | sed 's/[:/]/_/g') # 为 registry 用一个简单的 tag docker tag "$img" "localhost:5000/${name}" docker push "localhost:5000/${name}" done < images.txt ``` 3. 本地拉取 ```shell docker pull 10.0.0.2:5000/qdrant_qdrant_1.6.0 ``` ## 最新docker 安装方法与更换脚本 **Docker 安装与换源** ```bash bash <(curl -sSL https://linuxmirrors.cn/docker.sh) ``` **Docker 更换镜像加速器** ```bash bash <(curl -sSL https://linuxmirrors.cn/docker.sh) --only-registry ```
该博客文章由作者通过
CC BY 4.0
进行授权。
分享
最近更新
wsl 使用经验
十个命令开始玩转docker
node 使用教程
米哈游面试
Verilog语法-1
热门标签
red
文章目录
superion 安装指南
clion配置c项目调试(makefile)