发布自己的Docker镜像到DockerHub

2024-04-23 06:28
文章标签 镜像 docker 发布 dockerhub

本文主要是介绍发布自己的Docker镜像到DockerHub,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

学会了Dockerfile生成Docker image 之后,如何上传自己的镜像到 DockerHub呢?下面我以自己制作的 bs-cqhttp 镜像为例,演示一下如何将自己的镜像发布到 Docker 仓库。

1 生成自己的 Docker 镜像

1.1 实例镜像用到的文件

图1  实例镜像制作用到的文件

图1 实例镜像制作用到的文件

镜像需要用到上面的5个文件,请按此目录结构放置好文件,1.2.0版本的文件下载请参考前文:docker安装并跑通QQ机器人实践(4)-bs-cqhttp搭建。

1.2 bs-cqhttp 的 Dockerfile 文件

此镜像在以前的文章讲过,此处就不多解释,内容如下:

# 引用官方的轻量级基础镜像
FROM alpine:3.10# 定义作者信息
LABEL MAINTAINER="tanbushi@qq.com"# 设置国内源更新系统、安装 bash
RUN echo "https://mirrors.ustc.edu.cn/alpine/v3.13/main" > /etc/apk/repositories && \echo "https://mirrors.ustc.edu.cn/alpine/v3.13/community" >> /etc/apk/repositories && \apk update && apk upgrade && \apk add tzdata bash && \cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \echo "Asia/Shanghai" > /etc/timezone# 设置环境变量
ENV WORK_DIR /app/bs-cqhttp# 设置工作目录
WORKDIR $WORK_DIR# 拷贝运行时文件(go-cqhttp v1.2.0 内核文件)
COPY ./copy_into_volume /opt/app/bs-cqhttp/copy_into_volume/
COPY entrypoint.sh /root/bs-cqhttp/entrypoint.shENTRYPOINT [ "/bin/bash", "-c", "/root/bs-cqhttp/entrypoint.sh" ]

编译生成 image 文件,命令如下:

docker build -n tanbushi/bs-cqhttp:1.1.0 .

即会生成名为:tanbushi/bs-cqhttp:1.0.0 的镜像文件。
图2  生成的镜像文件

图2 生成的镜像文件

2 镜像发布

首先,需要有 github 账号,怎么注册,自行网查。此处假设您已经有了 github 账号。

2.1 登录 dockerhub

网页访问:https://hub.docker.com/,并登录。
图3  创建镜像仓库

图3 创建镜像仓库

点击创建仓库
图4  创建镜像仓库-属性填写
图4 创建镜像仓库-属性填写

选择分类:
图5  镜像仓库分类设置
图5 镜像仓库分类设置

2.2 上传到dockerhub

1)打标记

docker tag tanbushi/bs-cqhttp:1.0.0 tanbushi/bs-cqhttp:1.0.0

2)上传

docker push tanbushi/bs-cqhttp:1.0.0

即可完成上传!

3 测试拉取:

docker pull tanbushi/cqhttp:1.0.0

拉取成功!

这篇关于发布自己的Docker镜像到DockerHub的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/928020

相关文章

macOS Sequoia 15.5 发布: 改进邮件和屏幕使用时间功能

《macOSSequoia15.5发布:改进邮件和屏幕使用时间功能》经过常规Beta测试后,新的macOSSequoia15.5现已公开发布,但重要的新功能将被保留到WWDC和... MACOS Sequoia 15.5 正式发布!本次更新为 Mac 用户带来了一系列功能强化、错误修复和安全性提升,进一步增

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

debian12安装docker的实现步骤

《debian12安装docker的实现步骤》本文主要介绍了debian12安装docker的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录步骤 1:更新你的系统步骤 2:安装依赖项步骤 3:添加 docker 的官方 GPG 密钥步骤

Gradle在国内配置镜像加速的实现步骤

《Gradle在国内配置镜像加速的实现步骤》在国内使用Gradle构建项目时,最大的痛点就是依赖下载贼慢,甚至卡死,下面教你如何配置国内镜像加速Gradle下载依赖,主要是通过改写repositori... 目录引言一、修改 build.gradle 或 settings.gradle 的 reposito

Maven 依赖发布与仓库治理的过程解析

《Maven依赖发布与仓库治理的过程解析》:本文主要介绍Maven依赖发布与仓库治理的过程解析,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录Maven 依赖发布与仓库治理引言第一章:distributionManagement配置的工程化实践1

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

售价599元起! 华为路由器X1/Pro发布 配置与区别一览

《售价599元起!华为路由器X1/Pro发布配置与区别一览》华为路由器X1/Pro发布,有朋友留言问华为路由X1和X1Pro怎么选择,关于这个问题,本期图文将对这二款路由器做了期参数对比,大家看... 华为路由 X1 系列已经正式发布并开启预售,将在 4 月 25 日 10:08 正式开售,两款产品分别为华

Android Studio 配置国内镜像源的实现步骤

《AndroidStudio配置国内镜像源的实现步骤》本文主要介绍了AndroidStudio配置国内镜像源的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、修改 hosts,解决 SDK 下载失败的问题二、修改 gradle 地址,解决 gradle