Ubuntu系统 用docker安装jenkins

简介: Ubuntu系统 用docker安装jenkins

Ubuntu系统 用docker安装jenkins
1.1.1 服务器准备
如果刚买的服务器是ubuntu 一开始默认用户是ubuntu
需要在Ubuntu云服务器上使用root用户登录实例

1.设置root密码
sudo passwd root
输入两次密码 返回一下内容表示密码设置成功

passwd: password updated successfully

执行以下命令,打开sshd_config配置文件
sudo nano /etc/ssh/sshd_config
找到#Authentication,将PermitRootLogin参数修改为yes(如果PermitRootLogin参数被注释,请去掉首行的注释符号“#”)
执行以下命令,重启ssh服务
sudo service ssh restart

2.安装docker
Step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
Step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
​Step 5: 开启Docker服务
sudo service docker start
Step 6: 设置Docker开机自启动
systemctl enable docker
Step 7: 启动Docker
systemctl start docker
Step 8: 查看版本
docker --version

3.配置docker镜像源
修改docker配置文件
sudo nano /etc/docker/daemon.json
(就算没有这个文件也会创建一个)
添加镜像源
只需在 daemon.json 中添加 registry-mirrors 字段

{
"registry-mirrors": ["https://register.liberx.info"]
}
重启docker服务
sudo systemctl restart docker

4.安装必要组件
安装git
sudo apt-get -y install git
查看git版本
git --version

安装.Net Core SDK
​每个系统只需要运行一次

20.04

wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

18.04

wget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

16.04

wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

//使用管理员权限安装名为 packages-microsoft-prod.deb 的软件包
sudo dpkg -i packages-microsoft-prod.deb

//删除名为 packages-microsoft-prod.deb 的文件
rm packages-microsoft-prod.deb

Ubuntu 22.04 及更高版本无须执行上述命令。

更新一下软件源
sudo apt-get update

执行安装SDK

sudo apt-get install -y dotnet-sdk-7.0
sudo apt-get install -y dotnet-sdk-6.0
sudo apt-get install -y dotnet-sdk-5.0
sudo apt-get install -y dotnet-sdk-3.1
sudo apt-get install -y dotnet-sdk-2.1
查看已安装的版本
dotnet --list-sdks
dotnet --list-runtimes

5.安装jenkins
首先那我们在一个空的文件夹里,创建一个Dockerfile文件

FROM jenkins/jenkins

切换到 root 用户,以便安装 .NET Core SDK

USER root

显示系统信息

RUN uname -a && cat /etc/*release

更新 apt 源并安装常用依赖

RUN apt-get update && apt-get install -y \
curl \
apt-transport-https \
software-properties-common

安装 gettext 和 libunwind

RUN apt-get update && apt-get install -y \
gettext-base \
libunwind-dev

添加 Microsoft 的 GPG 密钥

RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
RUN mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
RUN sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-debian-stretch-prod stretch main" > /etc/apt/sources.list.d/dotnetdev.list'

安装.NET Core framework

RUN apt-get install -y wget
RUN apt-get install -y sudo
RUN wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
RUN sudo dpkg -i packages-microsoft-prod.deb
RUN rm packages-microsoft-prod.deb
RUN apt-get update
RUN apt-cache policy libssl-dev
RUN apt-get install libssl-dev
RUN apt-get install -y dotnet-sdk-8.0

切换回 jenkins 用户

USER jenkins
根据这个dockerfile构建镜像
docker build -t mhzch/apkimg .

创建jenkins工作目录
//创建工作目录
mkdir /home/jenkins_home
//赋予权限
chown -R 1000 /home/jenkins_home
生成jenkins容器

docker run -u root --rm -d -p 3001:8080 --name jenkins2 \
-v /usr/bin/docker:/usr/bin/docker \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dockerVolumes2/jenkins_home:/var/jenkins_home \
laozhangisphi/dnt-docker-jenkins
6.配置jenkins

查看jenkins管理员密码
docker exec jenkins1 cat /var/jenkins_home/secrets/initialAdminPassword

下面的源码管理如果是github 需要添加 凭证

添加凭证需要Personal Access Token (PAT) 认证
在github上打开设置 添加新 Tokens(classic)就行

添加完需要配置jenkins凭证
用户名写 github名字 密码写刚刚创建的Token id可以空着

然后是构建命令sell

dotnet restore
dotnet build
cd Blog.Core.Api

[kod.qudongli.net)
[kod.interpretchina.net)
[kod.paintervillage.net)
[kod.kangqicn.net)
[kod.sybbg.net)
[kod.zzals.net)
[kod.huanyangshuzhi.net)

dotnet publish
echo "Successfully!!!! ^ please see the file ."
cd bin/Release/net8.0/publish

rm -f appsettings.json

\cp -rf /var/jenkins_home/workspace/SecurityConfig/Blog.Core/appsettings.json appsettings.json

docker stop fervent_boum
docker rm fervent_boum
docker rmi mhzch/apkimg
docker build -t mhzch/apkimg .
docker run --name fervent_boum -p 8081:9291 mhzch/apkimg
应用 保存就行

7.安装反向代理Nginx
更新一下软件源
sudo apt-get update
安装nginx
sudo apt install nginx
启用和启动服务
sudo systemctl enable nginx
sudo systemctl start nginx
NGINX 服务代理配置文件

server {
listen 443 ssl;
server_name “你的域名或服务器ip”;

证书地址

ssl_certificate /etc/nginx/ssl/mhzch.cn_bundle.crt;
ssl_certificate_key /etc/nginx/ssl/mhzch.cn.key;

可选:配置其他 SSL 参数

ssl_protocols TLSv1.2 TLSv1.3;

ssl_prefer_server_ciphers on;

ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";

location / {
root html;
proxy_pass http://“你要代理的项目url”;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

index index.html index.htm;

}
}

相关文章
|
3月前
|
Ubuntu 安全 iOS开发
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
204 5
|
3月前
|
NoSQL Ubuntu MongoDB
在Ubuntu 22.04上安装MongoDB 6.0的步骤
这些步骤应该可以在Ubuntu 22.04系统上安装MongoDB 6.0。安装过程中,如果遇到任何问题,可以查阅MongoDB的官方文档或者Ubuntu的相关帮助文档,这些资源通常提供了解决特定问题的详细指导。
419 18
|
4月前
|
关系型数据库 数据库 PostgreSQL
docker 安装 Postgres 17.6
本文介绍如何通过Docker安装和配置PostgreSQL 17.6。内容包括拉取镜像、导出配置文件、运行容器并挂载数据与配置文件目录,以及进入容器使用psql操作数据库的完整步骤,便于持久化管理和自定义配置。
644 3
docker 安装 Postgres 17.6
|
3月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
597 5
|
3月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
427 2
|
4月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
354 18
|
4月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
376 15
|
4月前
|
存储 Ubuntu iOS开发
在Ubuntu 22.04系统上安装libimobiledevice的步骤
为了获取更多功能或者解决可能出现问题,请参考官方文档或者社区提供支持。
297 14
|
4月前
|
Ubuntu 安全 关系型数据库
安装与配置MySQL 8 on Ubuntu,包括权限授予、数据库备份及远程连接指南
以上步骤提供了在Ubuntu上从头开始设置、配置、授权、备份及恢复一个基础但完整的MySQL环境所需知识点。
543 7
|
4月前
|
消息中间件 人工智能 运维
Ubuntu环境下的 RabbitMQ 安装与配置详细教程
本文聚焦在Ubuntu下RabbitMQ安装与配置教程,旨在帮助读者快速构建稳定可用的消息队列服务。
1048 6