1.1 docker 安装社区版本CE
确保 yum 包更新到最新。 yum update 卸载旧版本(如果安装过旧版本的话) yum remove docker docker-common docker-selinux docker-engine 安装需要的软件包 yum install -y yum-utils device-mapper-persistent-data lvm2 设置yum源 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 安装docker yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是稳定版17.12.0 yum install <自己的版本> # 例如:sudo yum install docker-ce-17.12.0.ce 启动和开机启动 systemctl start docker systemctl enable docker 验证安装是否成功 docker version
1.2 【问题】
安装docker出现的问题 GPG key retrieval failed: [Errno 12] Timeout on https://download.docker.com/linux/centos/gpg: (28, 'Operation timed out after 30001 milliseconds with 0 out of 0 bytes received') 【原因】 由于国内访问不到docker官方镜像的缘故 【解决】 执行命令 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 执行后结果:
其本质是修改了docker-ce.repo文件,文件路径:/etc/yum.repos.d/docker-ce.repo
1.3 阿里云镜像加速
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
就是找到etc/docker/daemon.json文件并修改,添加代码如下(如果在/etc/docker下找不到daemon.json文件,可以自己新建,cd切换到/etc/docker目录下,使用touch命令创建)
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://k42arib3.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
登录到上面说过的国内的仓库daocloud :Hub · DaoCloud
docker一些常用命令:
docker images # 查看所有镜像
docker ps a # 查看正在运行的容器
docker stop image_id # 停止容器
docker run -it dockerName:tag bash # 启动docker
docker run -it --gpus all llm_qa:0.1 /app/run.sh # docker外执行run.sh脚本
docker run --gpus all -it ubuntu:latest bash # 启动设置gpu
docker run -it --gpus all -v /tcdata:/tcdata llm_qa:0.1 /app/run.sh # 挂载路径,让docker也能访问本地路径
docker commit -m "test" -a "Cristiano" e6b432f2cb63 llm_qa:0.1 # 打包容器:docker commit-m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]
docker cp /path/to/my_folder container_id:/path/inside/container # 复制文件夹到docker镜像里面
docker exec -it container_id /bin/bash # 进入名为 container_id 的容器
docker start container_id # 启动容器
docker stop $(docker ps -aq) # 先停止所有容器
docker rm $(docker ps -aq) # 再删除所有容器
docker system prune -f # 删除镜像后,我们需要进行垃圾回收来释放磁盘空间
docker images --format "{{.Repository}}:{{.Tag}}" | grep 'llm_qa' | xargs -r docker rmi -f # 批量删除指定名字的镜像, llm_qa为镜像名含有的字符串信息
docker images "llm_qa" --format "{{.Repository}}:{{.Tag}}" | grep -E '2\.[0-9]$' | xargs -r docker rmi # 删除指定镜像,一定范围tag的镜像
docker logs -f container_id 查看容器实时日志
docker logs -f --tail=100 container_id 查看容器实时日志从最后100行开始
docker logs -f -t --since="2024-05-16" --tail=10 container_id 查看容器xx从2024年05月16日后的最新10条日志