linux下docker安装与镜像容器管理


linux下docker安装与镜像容器管理

原文链接:linux下docker安装与镜像容器管理

导言

ubuntu22.04-docker engine安装,以及镜像容器管理

docker非常简单介绍

docker就是一个虚拟化容器,image是镜像,就是一个dockerfile指明这个镜像的任务,如数据库服务,API接口,虚拟机服务,image包含环境和脚本。创建镜像后执行中的镜像实例是一个容器,这个容器可以新建删除关闭多开。

安装卸载

卸载

卸载 docker

shell 复制代码
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
sudo apt-get autoremove

web安装

参考官网链接,docker的安装脚本会随着版本变化

shell 复制代码
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc


# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

sudo docker run hello-world

deb安装

从官网下载containerd、docker-ce-cli、docker-ce、docker-buildx-plugin、docker-compose-plugin,最好发行时间一样,版本兼容

shell 复制代码
# 在文件夹下安装
sudo dpkg -i -q containerd.io_1.6.28-2_amd64.deb docker-ce-cli_25.0.4-1~ubuntu.22.04~jammy_amd64.deb docker-ce_25.0.4-1~ubuntu.22.04~jammy_amd64.deb docker-buildx-plugin_0.13.0-1~ubuntu.22.04~jammy_amd64.deb  docker-compose-plugin_2.24.7-1~ubuntu.22.04~jammy_amd64.deb 

管理

docker启动与镜像加速

docker运行管理命令
shell 复制代码
sudo docker info #查看docker位置
systemctl status docker.service #查看docker status
#启动docker
sudo systemctl start docker  
sudo service docker start 
#重启docker
sudo systemctl restart docker  
sudo service docker restart
#停止docker
sudo systemctl stop docker  
sudo service docker stop 
docker加速配置

/etc/docker/daemon.json是docker配置镜像的文件,按照如下脚本配置

shell 复制代码
echo  {"registry-mirrors": ["https://registry.hub.docker.com","http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn","https://registry.docker-cn.com"]} | sudo tee -a /etc/docker/daemon.json
sudo systemctl restart docker
sudo docker info #查看有没有registry mirror

镜像操作

查看
shell 复制代码
docker image ls  #获取当时所有镜像(docker images)
docker images
docker ps -a
创建镜像

创建文件夹,编写dockerfile file1

shell 复制代码
#ubuntu虚拟机镜像
# 进行指定所使用的Ubuntu版本
FROM ubuntu:22.04
MAINTAINER user1

ENV MYPATH /usr/local
WORKDIR $MYPATH
# 安装所需的命令
RUN \
    apt update && \
    apt -y upgrade && \
    apt install -y build-essential && \
    apt-get install -y  net-tools

EXPOSE 80
CMD /bin/bash

build后完成镜像创建

shell 复制代码
docker build -f file1 -t myubuntu:22.04 . #构建docker .不能忘
sudo docker image ls #查看镜像,ps查看正在运行的容器
查找拉镜像
shell 复制代码
docker search image
docker pull image
docker push
推镜像
shell 复制代码
sudo docker login

该命令将提示你输入用户名和密码来登录到 Docker Hub。

  1. 为要推送的镜像添加标签(tag):
shell 复制代码
docker tag local_image:tagname username/repository:tagname

在这个命令中,local_image:tagname 是本地镜像的名称和标签,username/repository:tagname 是远程仓库镜像的名称和标签。

  1. 推送镜像到远程仓库:
shell 复制代码
docker push username/repository:tagname
删除镜像
shell 复制代码
sudo docker rmi image

容器操作

创建
shell 复制代码
# 创建镜像的容器并进入
sudo docker run -it -d --name ubuntu1 myubuntu:22.04  
-it 表示以交互式模式运行容器,并分配一个伪终端
-d 后台保持
关闭启动
shell 复制代码
sudo docker start -ia  ubuntu1
sudo docker stop ubuntu1
进入
shell 复制代码
sudo docker exec -it ubuntu1 /bin/bash
删除
shell 复制代码
sudo docker rm -f ubuntu1
退出

exit退出或ctrlD

相关推荐
Mortalbreeze几秒前
MySQL 基础篇(五):数据操作基础 —— CRUD
linux·服务器·数据库·mysql
ai小陈8 小时前
GPU服务器租用存储验收:检查点写入与磁盘吞吐实战
运维·服务器·人工智能·ai·ssh·gpu算力
灯澜忆梦10 小时前
【minio】#1 | 简介与安装
docker·对象存储·minio
Ivanqhz10 小时前
激活函数在 Transformer 中的作用及各种变体简述
java·linux·数据库·人工智能·深度学习
有毒的教程11 小时前
VMware仅主机模式:物理机 ↔ 虚拟机 文件共享
运维
殷色玫瑰12 小时前
C/C++ 内存管理详解:从内存分布到 new/delete 底层原理
java·linux·c语言·c++
山岚的运维笔记13 小时前
ComfyUI NVIDIA安装教程:官方便携版下载+run_nvidia_gpu.bat启动,8G显存Windows实操
运维·服务器·windows·笔记·prompt·aigc·comfyui
海宇大数据14 小时前
零信任架构实战:基于海宇活体识别V步骤1构建自动化远程公证会话初始化网关
运维·人工智能·架构·自动化
꯭自꯭闭꯭14 小时前
DM7主备升级方案
linux·服务器·数据库
用户41071920132514 小时前
VMware 虚拟机Ubuntu 环境linux远程连接失败
linux