1.docker安装
1.1 先检查ubuntu系统有没有安装过docker 使用 docker -v 命令 如果有请先卸载旧版本,如果没有直接安装命令如下:
1.1.0 首先,确保你的系统包是最新的: 如果是root 权限下面命令的sudo可以去掉
sudo apt-get update
sudo apt-get upgrade
1.1.2. 安装必要的依赖
安装一些必要的依赖包,以便 apt 可以通过 HTTPS 使用仓库:
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
1.1.3. 添加 Docker 的官方 GPG 密钥
下载并添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
1.1.4. 添加 Docker APT 仓库
将 Docker 的 APT 仓库添加到你的系统中。确保你使用的是正确的 Ubuntu 版本代号(例如 focal 对应 Ubuntu 20.04,jammy 对应 Ubuntu 22.04):
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
1.1.5. 更新 APT 包索引
更新 APT 包索引以包含新添加的 Docker 仓库:
sudo apt-get update
1.1.6. 安装 Docker
安装 Docker CE(社区版):
sudo apt-get install docker-ce docker-ce-cli containerd.io
1.1.7. 验证 Docker 安装
验证 Docker 是否安装成功并正在运行:
sudo systemctl status docker
你应该会看到类似以下的输出,表明 Docker 服务正在运行
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since ...
1.1.8. 将当前用户添加到 docker 组
为了在不使用 sudo 的情况下运行 Docker 命令,将当前用户添加到 docker 组:
sudo usermod -aG docker ${USER}
注意:添加用户到 docker 组后,需要重新登录或重启系统才能使更改生效。
1.1.9. 测试 Docker
运行一个简单的 Docker 容器来测试安装是否成功:
docker run hello-world
如果一切正常,你应该会看到一条欢迎消息,表明 Docker 已经成功安装并运行。
1.1.10. 配置 Docker 镜像加速器(可选)
如果你在中国大陆,建议配置 Docker 镜像加速器以提高下载速度。编辑或创建 /etc/docker/daemon.json 文件,添加以下内容:
{"registry-mirrors": ["https://<your_mirror>.mirror.aliyuncs.com"]
}
替换 <your_mirror> 为你的阿里云镜像加速器地址。
保存文件后,重启 Docker 服务以使配置生效:
sudo systemctl restart docker
至此docker安装完成。
2.docker常用命令:
可以通过docker --help 查看docker 命令帮助systemctl restart docker 重启docker 服务systemctl stop docker 停止docker 服务systemctl start docker 开启docker 服务docker pull 镜像名称 拉取镜像,从本地拉取镜像,本地没有,从远程仓库拉取docker push 镜像名称 推送镜像到本地仓库docker cp 复制docker commit 提交一个新的副本使它成为一个新的镜像 命令如下docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[镜像版本号]docker 命令 --help 查询命令帮助docker images 查看镜像docker ps 查询正在运行的容器docker ps -a 查询所有容器docker ps -ap 查询所有容器 image的IDdocker restart 容器名称或容器id 重启容器docker stop 容器名称或容器id 停止容器docker run -d 容器名称或容器id 后台启容器docker run -d -p 宿主机端口号:容器端口号 -v 宿主机挂载的绝对目录:容器的数据存放目录 -e 环境变量 容器名称 代表的意思是: 后台启动某个镜像 端口映射,目录挂载到宿主机的目录上 docker exec -it 容器名称 bash 意思进入某个容器内,进行shell交互docker logs -f 容器名称 持续查看容器的输出日志
3.本地镜像发布到阿里云仓库
3.1首先登录阿里云创建仓库如下图所示
企业用就要使用企业实例
我这里使用个人实例
先创建命名空间如图
在创建镜像仓库如下图
选择本地仓库如下图
按照阿里云的脚本运行就可以了如图
到此推送到阿里云仓库以及完成
4.将本地镜像推送到私服仓库中因为有些镜像属于公司敏感服务,所以搭建自己的私服仓库
4.1 docker registry 是官方提供的工具,可以用于构建私有镜像仓库
4.2.拉取docker registry镜像 使用命令
docker pull registry
4.3 启动registry镜像
docker run -d -p 5000:5000 -v 宿主机的仓库目录使用绝对路径:容器存放镜像的目录使用绝对路径 --privileged=true registry
4.4 开始镜像推送工作
docker tag 镜像名称 47.98.233.56:5000/ubuntu:latest
4.5由于docker 不能推送 http协议需要配置如下
在配置阿里云的daemon.json 下面配置{"registry-mirrors":["阿里云的仓库地址"],"insecure-registries":["你私服的地址加你映射仓库的端口"]}
如图:
4.6.推送到私服仓库如图
4.7用命令验证仓库有没有推送成功
如下图说明推送成功
4.7从私服拉取镜像如图
到此结束