linux下使用Dockerfile安装jenkins碰到的问题(debian源,下载Docker Compose超时)

Debian 10手动安装Docker Compose v2完整指南 Docker Compose是实现多容器应用编排的核心工具,其本质是通过声明式YAML文件(如docker-compose.yml)统一管理服务依赖、网络、卷(volumes)和资源约束。在Debian 10等以稳定性优先的发行版中,系统仓库提供的旧版本(如1.21.0)无法支持v3.7+语法、profiles、healthcheck start_period及deploy resources等关键特性,导致‘Version unsupported’等代际兼容问题。因此,采用官方二进制直装方案成为兼顾安全性 阅读详情

今天参考晓晨Master大神的文章https://www.cnblogs.com/stulzq/p/8627360.html,在一台Linux主机使用Dockerfile安装jenkins.

碰到两个坑,在此记录一下:

1.我使用的是阿里云的debian源,所以Dockerfile是这样的:
 

FROM jenkins

USER root
#清除了基础镜像设置的源,切换成腾讯云的jessie源
#使用非腾讯云环境的需要将 tencentyun 改为 aliyun
RUN echo '' > /etc/apt/sources.list.d/jessie-backports.list \
  && echo "deb http://mirrors.aliyun.com/debian/ jessie main non-free contrib" > /etc/apt/sources.list \
  && echo "deb http://mirrors.aliyun.com/debian/ jessie-updates main non-free contrib" >> /etc/apt/sources.list \
  && echo "deb http://mirrors.aliyun.com/debian-security/ jessie/updates main non-free contrib" >> /etc/apt/sources.list
#更新源并安装缺少的包
RUN apt-get update && apt-get install -y libltdl7 && apt-get update

ARG dockerGid=999

RUN echo "docker:x:${dockerGid}:jenkins" >> /etc/group

# 安装 docker-compose 因为等下构建环境的需要
RUN curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

RUN chmod +x /usr/local/bin/docker-compose

2.执行构建:docker build . -t auto-jenkins,碰到下载Docker Compose超时的问题。

Failed to connect to github-production-release-asset-2e65be.s3.amazonaws.com port 443: Connection timed out

原因是地址被墙,需要在linux的/etc/hosts上配置HOST。我ping github-production-release-asset-2e65be.s3.amazonaws.com得到IP为52.216.16.72。

在linux上运行:vim /etc/hosts,增加:

52.216.16.72 github-production-release-asset-2e65be.s3.amazonaws.com

修改完后再次执行构建即可。

感谢晓晨Master大神的文章!

Play with Docker零安装学容器:浏览器跑Docker Compose与多节点集群 容器技术的核心在于隔离、可移植与编排能力,其底层依赖Linux命名空间、cgroups及镜像分层原理。Play with Docker(PWD)通过Docker-in-Docker架构,将完整Docker引擎运行在远端Alpine Linux容器中,实现真正的‘零安装’学习体验——无需配置WSL、不兼容M1芯片、不占用本地资源。它天然支持docker-compose、多节点Swarm集群、端口映射与数据持久化等生产级功能,且所有操作100%兼容Docker Desktop与云环境。特别适合新手快速验证Doc 阅读详情

相关推荐

Ubuntu 16.04 上用 Docker Compose 搭建可复现 CI 测试环境

持续集成(CI)是保障软件质量的核心实践,其本质在于通过自动化实现构建、测试与反馈的快速闭环;而测试环境的关键诉求是隔离性、一致性与可重现性——这正是容器化技术的价值原点。Docker 基于 Linux 内核的 cgroups 和 namespaces 提供轻量级进程隔离,Docker Compose 则通过声明式 YAML 实现多容器协同编排,二者结合可在老旧系统上实现‘环境即代码’。在 Ubuntu 16.04 这类已结束官方支持但仍在产线广泛使用的环境中,该方案规避了内核升级、发行版迁移等高风险操作,

diandingyin9417的博客 417

Debian 10 安装 Docker Compose 四种安全路径详解

Docker Compose 是实现多容器应用声明式编排的核心工具,其原理基于 YAML 配置驱动容器生命周期管理与服务依赖调度,技术价值在于提升部署一致性、降低运维复杂度,并支撑微服务、CI/CD 和家庭媒体中心等多样化场景。在 Debian 系统中,因官方源版本滞后、Python 环境敏感及安全校验缺失等问题,直接 apt 安装常导致功能缺失或运行异常。本文聚焦 Debian 10(buster)这一长期稳定发行版,围绕 docker-compose 安装这一高频实践需求,系统解析 GitHub 二进制

weixin_34417200的博客 656

Debian 9 安装 Docker 实战:适配内核4.9与overlay2的完整指南

Docker 是基于 Linux 内核特性的容器运行时,其稳定运行高度依赖 cgroup、namespace、overlayfs 等底层机制。在较老发行版如 Debian 9(内核 4.9)上部署 Docker,常因 cgroup v2 冲突、aufs 驱动弃用、overlay2 内核兼容性不足及 systemd 资源管控缺失导致容器启动失败、镜像拉取缓慢或 Jenkins 等关键服务 OOM 崩溃。本文聚焦 Debian 9 这一典型老旧生产环境,详解如何通过强制启用 overlay2 存储驱动、禁用 c

weixin_34080571的博客 531

关于Ubuntu(Debian)软件源报错问题及解决

问题:在执行sudo apt-get update时出现以下报错,查询得知是因为换源以后,新的下载源没有公钥 W: GPG error: http://mirrors.aliyun.com/debian buster InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY 0E98404D386F

givenchy_yzl的博客 9476

Ubuntu 18.04 安装 Docker Compose v2 的兼容方案

Docker Compose 是容器编排的核心工具,其演进经历了从 Python 实现(docker-compose)到 Go 实现(docker compose)的重大架构升级。该转变带来语法增强、性能提升与 CNCF 标准化等技术价值,广泛应用于 Jenkins、Jellyfin、Portainer 等现代云原生应用部署。然而在已结束标准支持的 Ubuntu 18.04 上,APT 仓库仅提供过时的 v1.17.1 版本,无法解析 profiles、deploy 等 v2+ YAML 特性,且存在已知安

weixin_34318272的博客 356

Laravel本地开发环境:Docker Compose一键搭建Nginx+PHP+MySQL

Docker Compose 是现代 Web 开发中实现环境标准化的关键工具,它通过声明式 YAML 文件编排多容器应用,解决传统 LAMP 栈常见的版本冲突、端口抢占与环境漂移问题。其核心原理在于利用 Docker 的隔离性与镜像确定性,将 Nginx(反向代理与静态服务)、PHP-FPM(应用运行时)和 MySQL(持久化存储)解耦为独立可配置服务,并通过自定义网络与卷挂载实现安全通信与数据持久。该方案显著提升 Laravel 项目在 Ubuntu、WSL2、Mac M1 等异构宿主上的可复现性与团队协

weixin_30568591的博客 350

docker 下载超时的错误最终解决方法

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34128501的博客 2318

龙芯3B6000服务器部署Docker与Jenkins实战指南

如果你正在为龙芯3B6000服务器搭建CI/CD环境,可能会发现一个尴尬的现实:网上关于x86/ARM架构的Docker和Jenkins教程铺天盖地,但针对龙芯LoongArch架构的实战指南却寥寥无几。直接照搬x86的安装命令,大概率会遭遇“架构不支持”或“依赖库缺失”的报错,让自动化部署的第一步就卡在环境准备上。 这背后反映的,是国产化替代浪潮中的一个具体技术痛点:生态迁移。龙芯3B6000作为性能对标主流产品的自主CPU,其软硬件生态正在快速完善,但具体到Docker镜像、Jenkins插件这类细分领

java2000.net 776

使用Docker安装Jenkins,并能够在该Jenkins中使用Docker

参考https://blog.youkuaiyun.com/jiangjiang_jian/article/details/88822981是因为在使用apt-get安装依赖时,可能会有对话框,制作镜像时如果不选择会导致失败。

UncleDong的博客 1905

龙芯3B6000平台Docker部署Jenkins实战:国产化CI/CD环境搭建指南

这次我们来看一个在国产龙芯 3B6000 平台上,使用 Docker 部署 Jenkins 的实战方案。对于使用龙芯架构的开发者或运维人员来说,如何在非 x86 的生态下搭建一套稳定、高效的 CI/CD 流水线,是一个很实际的需求。Docker 容器化部署 Jenkins 不仅能简化环境配置,还能提供更好的隔离性和可移植性。本文将带你从零开始,完成在龙芯 3B6000 服务器上安装 Docker、拉取适配镜像、部署 Jenkins 服务,并进行基础配置和功能验证的全过程。 核心关注点在于:龙芯平台下的 Do

a2850363633的博客 399

docker init:自动化生成Dockerfile与compose.yaml的工程实践指南

Docker容器化是现代应用交付的基础能力,其核心在于Dockerfile构建规范与docker-compose编排逻辑。理解镜像分层、多阶段构建、非root用户安全模型及.dockerignore机制,是保障应用可重现、可移植、可运维的技术前提。docker init作为Docker CLI官方内置工具,通过项目语义分析(如requirements.txt/ package.json识别)、交互式风险前置审查(端口校验、启动命令推荐)和最佳实践注入(缓存挂载、环境变量设置),将重复性配置工作标准化。它不替

weixin_33968104的博客 381

通过Dockerfile创建项目部署镜像超时

首先将j项目jar包和Dockerfile文件:放于目录 /var/lib/docker/tmp 我的Dockerfile文件: FROM java:8 EXPOSE 8080 VOLUME /tmp ENV TZ=Asia/Shanghai RUN ln- sf /usr/share/zoneinfo/{TZ} /etc/locatime && echo “{TZ}” > /etc/timezone ADD myshop.war /app.jar RUN bash -c ‘touc

weixin_43158695的博客 902

ESP8266连接阿里云(STM32)

一、概述 之前通过串口调试助手+ESP8266已经连接上阿里云了 ESP8266连接阿里云(串口调试助手) 这次我们使用STM32+ESP8266来接入阿里云,其实本质上就是STM32和ESP8266进行串口通信,相当于使用STM32代替之前使用的串口调试助手来发送AT指令。只是发送的字符串数据可能有些细节需要注意一下。 二、保存连接的AT指令 定义几个字符串数据保存需要发送的AT指令 //注意: //末尾记得加\r\n //字符...

xyx0610的博客 4万+

为什么你的Docker总是拉取超时:深入解析代理设置中的8个致命误区

解决Docker镜像拉取超时难题,深入剖析代理配置中的8个常见错误。涵盖开发、测试与生产环境下的Docker镜像拉取代理设置方法,揭示HTTPS代理、daemon.json配置等关键细节,提升拉取速度与稳定性,值得收藏。

CodeTrick的博客 1093

物联网开发笔记(34)- 使用Micropython开发ESP32开发板之控制步进电机(28BYJ-48)

使用Micropython开发ESP32开发板之控制步进电机(28BYJ-48)

zhusongziye的博客 1万+

增距镜或中继镜选型

增距镜光路图

camerall 5246

Docker 学习:术语、使用、Compose、Swarm

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

freeking101的博客 6167

Windows部署小龙虾 OpenClaw 报错不断?参考这篇文章,轻松配置 OpenClaw 所需环境

想在Windows上部署OpenClaw却频频报错?🔧 本文详细梳理了OpenClaw部署必需环境的安装步骤和官方下载地址 📦,提供完整的验证清单和常见问题排查方法,帮你一次性搞定所有环境配置,顺利部署OpenClaw ✅

XiaoqiangClub的博客 363

Debian 10 下 Docker Compose 编译安装与 YAML 避坑指南

Docker Compose 是容器编排的核心工具,其本质是面向 YAML 配置的声明式服务管理器,依赖 Docker Engine API 与宿主机内核能力协同工作。在 Debian 10 等长期支持(LTS)发行版中,apt 源提供的旧版 Compose(如 1.21.0)因不兼容现代 API v1.41、缺失 profiles/deploy 等关键字段支持,且存在 CVE-2021-41091 等未修复漏洞,已无法满足生产环境对功能完备性、安全合规性与配置可靠性的基本要求。技术选型需回归工程本质:优先

weixin_30615767的博客 421

手把手教你学PCIE-- 热插拔电路设计与实现方案

PCIe热插拔(Hot-Plug)技术允许用户在系统运行时安全地插入或移除设备,而无需重启系统。本文将深入讲解热插拔电路的设计要点、关键器件选型及信号协议规范,涵盖机械结构、电气保护和电源管理三大核心模块。​。

MHD0815的博客 440

TPAMI 2025 | 从缺失碎片到杰作:基于上下文自适应扩散的图像修复

图像修复是一项具有挑战性的任务,尤其是要确保生成的内容与图像的现有部分无缝融合。尽管最近的扩散模型展现出了潜力,但它们在保持已知区域和未知(缺失)区域之间的连贯性方面常常遇到困难。这个问题源于扩散过程中缺乏明确的空间和语义对齐,导致生成的内容无法与原始图像平滑融合。此外,扩散模型通常依赖全局学习分布,而非局部特征,这使得生成的图像部分与现有图像部分之间存在不一致。在这项工作中,作者提出了ConFill,这是一个新颖的框架,引入了上下文自适应差异(CAD)模型,以确保在整个扩散过程中,已知区域和未知区域的中间

小白学视觉 240

4. docker镜像、Dockerfile

分层的文件系统优势:节省空间、速度快、重用只读创建容器时,会在镜像上面添加一个可写层。

u010198709的博客 2049

Android Audio音量——音频类型新增(九)

在实际开发中,经常会遇到需要新增一个音频类型(usage)的需求,这里我们简单介绍一下需要修改的代码。

小旭的专栏 1570

Mac/Linux 使用 Docker Jenkins 自动部署 Spring Boot 后端

本文以项目名称。

tongshao100的博客 228

Claude Code设置中文输出指南

Claude Code 的语言配置其实并不复杂,只要做好全局的默认设置,再加上一些小的提醒技巧,就能完全避免突然切换英文的问题,让你全程用中文流畅地和 AI 助手协作,不用再被语言问题打断工作节奏,真正提升开发效率。

篮球界最会写bug的人;程序猿中打球最菜的人。 2228

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Ubuntu安装Docker Compose终极指南:v1到v2的版本断层与四条可靠路径

Docker Compose 是 Docker 生态中用于定义和运行多容器应用的核心编排工具。其原理已从独立 Python 包(v1)演进为 Docker CLI 原生插件(v2),依赖 Docker Engine ≥20.10 与严格版本协同。这一技术升级带来显著价值:完整支持 profiles、x-* 扩展、资源限制等现代 YAML 规范,并提升安全性和执行一致性。典型应用场景包括 Ubuntu 系统上的 CI/CD 流水线部署、WSL2 开发环境搭建、金融政务内网离线交付,以及 VS Code 容器化

chulilang8944的博客 366

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

上一篇: webpack打包vue提示错误:(node:20752) UnhandledPromiseRejectionWarning: Error: Cyclic dependency
下一篇: Jenkins配置git仓时出现“Failed to connect to repository : Command ... HEAD" returned status code 128:”的问题
阿榄
博客等级 码龄18年 31粉丝 22原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值