极客时间_week03_work

作业内容

1、基于 docker-compose 实现对 Nginx+Tomcat Web 服务的单机编排
2、安装 GitLab、创建 group、user 和 project 并授权
3、熟练 Git 命令的基本使用,通过 Git 命令实现源代码的 clone、push 等基本操作
4、熟练掌握对 GitLab 服务的数据备份与恢复
5、部署 Jenkins 服务器并安装 GitLab 插件、实现代码免秘钥代码 clone

1、基于docker-compose 实现对Nginx+Tomcat Web服务的单机编排

		docker-compose安装
		apt install docker-compose
		二进制安装
		wget https://github.com/docker/compose/releases/download/v2.12.1/docker-compose-linux-x86_64
		cp docker-compose-Linux-x86_64 /usr/bin/docker-compose
		chmod a+x /usr/bin/docker-compose
		官方文档页 https://docs.docker.com/compose/compose-file/
		https://docs.docker.com/compose/compose-file/compose-versioning/

新建docker-compose.yaml文件
vim docker-compose.yaml
在这里插入图片描述

#需求:使用nginx代理访问成功tomcat默认界面
#1、准备好nginx测试网页,代理配置文件,nginx镜像
#2、准备好tomcat镜像,选择老师已经打好的tomcat测试镜像 registry.cn-hangzhou.aliyuncs.com/zhangshijie/tomcat-myapp:v1
version: '3.8' #指定的语法版本
services: #定义服务
  nginx-server: #当前容器服务名
    image: nginx:1.22.0-alpine
    container_name: nginx-web1
    expose: #声明的映射端口
      - 80
      - 443
    ports: #定义端口映射
      - "80:80"
      - "443:443"
    networks: #自定义网络,两块网卡,按顺序排列eth0 和eth1,使用自定义的网络,如果网络不存在则会自动创建该网络并分配子网
      - front
      - backend
    volumes: #物理机与磁盘映射关系
      - ./web1:/usr/share/nginx/html
      - ./conf.d:/etc/nginx/conf.d/
    links:
      - tomcat-server

  tomcat-server:
    image: registry.cn-hangzhou.aliyuncs.com/zhangshijie/tomcat-myapp:v1
    container_name: tomcat-app1
    networks: #eth1
      - backend
    links:
      - mysql-server



networks:
  front: #自定义前端服务网络,需要docker-compose创建
    driver: bridge
  backend:  #自定义后端服务的网络,要docker-compose创建
    driver: bridge

访问前端界面,验证结果
默认首页
在这里插入图片描述
访问代理测试页面
在这里插入图片描述

2、安装gitlab,创建group、user和project并授权

		1、前置操作,更新镜像源,安装相关工具,依赖
		sudo apt-get update
		sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
		2\根据操作系统版本,下载对应的gitlab   lsb_release -a
		No LSB modules are available.
		Distributor ID: Ubuntu
		Description:    Ubuntu 22.10
		Release:        22.10
		Codename:       kinetic
		3、访问国内镜像下载源  ,练习默认gitlab-ce版本
		wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/jammy/main/g/gitlab-ce/gitlab-ce_15.5.0-ce.0_amd64.deb
		命令安装
		dpkg -i gitlab-ce_15.5.2-ce.0_amd64.deb   
		4、修改配置文件
		vim /etc/gitlab/gitlab.rb
		5、生成配置文件
		gitlab-ctl reconfigure
		6、查看gitlab状态
		gitlab-ctl status
		7、第一次默认密码存储位置
		cat /etc/gitlab/initial_root_password

在这里插入图片描述
在这里插入图片描述

创建group user 和project 并授权

1、修改环境为中文
http://192.168.188.129/-/profile/preferences 选择环境为中文
在这里插入图片描述
2、添加管理员电子邮件地址并验证
http://192.168.188.129/-/profile/emails
3、修改默认通知邮件和主邮件
http://192.168.188.129/-/profile/notifications
http://192.168.188.129/-/profile
4、修改密码
http://192.168.188.129/-/profile/password
5、关闭掉默认开启的注册功能
http://192.168.188.129/admin
6、新建用户
在这里插入图片描述
7、新建群组
在这里插入图片描述
8、邀请成员授权开发者权限
在这里插入图片描述
9、新建项目
http://192.168.188.129/projects/new?namespace_id=5

4、熟练掌握对 GitLab 服务的数据备份与恢复

1、停止相关数据连接服务,在当前目录备份gitlab服务
gitlab-ctl stop unicorn sidekiq
gitlab-rake gitlab:backup:create
2、备份文件默认存储位置
cat /etc/gitlab/gitlab.rb | grep “backup_path”
在这里插入图片描述
3、查看备份文件
在这里插入图片描述
配置文件默认命名方式 时间戳_年月日_版本号_gitlab_backup.tar
4、启动服务
gitlab-ctl start unicorn sidekiq
5、数据恢复操作
关闭数据连接服务
gitlab-ctl stop unicorn sidekiq
选择指定的备份文件,恢复数据
gitlab-rake gitlab:backup:restore BACKUP=1668263684_2022_11_12_15.5.0
6、启动数据连接服务
gitlab-ctl start unicorn sidekiq

3、熟练 Git 命令的基本使用,通过 Git 命令实现源代码的 clone、push 等基本操作

		git config --global user.name “NAME” #设置全局用户
		git config --global user.email xxxx@yy.com
		git config --global --list
		配置ssh免认证
		ssh-keygen -t rsa -C 'xxx@xxx.com' 按注册邮箱生成
		http://192.168.188.129/-/profile/keys 添加密钥 拷贝公钥内容
		git clone git@192.168.188.129:devops/devops_geek.git
		git branch 查看当前分支
		git checkout -b devlop 创建一个开发分支
		git checkout devlop 切换到开发分支
		git remote add origin 仓库地址  添加远程仓库地址
		git push -u origin devlop
		git remote -v 查看当前远程仓库地址
		git push -u origin devlop 推送开发分支

在这里插入图片描述
在这里插入图片描述

5、部署 Jenkins 服务器并安装 GitLab 插件、实现代码免秘钥代码 clone

1、安装java环境,直接apt
apt install openjdk-11-jdk
验证java环境
java -version
在这里插入图片描述
2、下载jenkins二进制安装包 并安装
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/debian/jenkins_2.321_all.deb
apt install daemon
dpkg -i jenkins_2.321_all.deb
3、修改端口
vim /etc/default/jenkins
HTTP_PORT=8081
vim /etc/init.d/jenkins
check_tcp_port “http” “ H T T P P O R T " " 8081 " " HTTP_PORT" "8081" " HTTPPORT""8081""HTTP_HOST” “0.0.0.0” || return 2
4、修改变量NAME,以root用户启动
vim /etc/default/jenkins
JENKINS_USER=root
JENKINS_GROUP=root
vim /lib/systemd/system/jenkins.service
User=root
Group=root
5、systemctl daemon-reload & systemctl restart jenkins & systemctl enable jenkins
6、第一次启动默认密码存储位置
/var/lib/jenkins/secrets/initialAdminPassword
7、第一次启动时遇到长时间无法启动
在这里插入图片描述
修改配置文件,更新源为国内清华镜像源后重启jenkins服务
需要你进入jenkins的工作目录,打开-----hudson.model.UpdateCenter.xml将 url 中的
https://updates.jenkins.io/update-center.json
更改为https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
8、复制初始密码进入初始设置界面,选择推荐安装
在这里插入图片描述
9、等待依赖和基础插件安装完成
在这里插入图片描述
11、下载插件时下载失败,等待过久,替换下载源为国内镜像源(备注 无用,最新版本jenkins重启会重新下载json文件覆盖原有操作,尚未找到解决办法)
cd /var/lib/jenkins/updates
sudo sed -i ‘s#updates.jenkins.io/download/plugins#mirrors.tuna.tsinghua.edu.cn/jenkins/plugins#g’ default.json && sudo sed -i ‘s#www.google.com#www.baidu.com#g’ default.json
systemctl restart jenkins

12、安装完所有必须插件进入主界面
在这里插入图片描述

13、添加ssh全局凭证
选择上文录入的git 公钥
在这里插入图片描述
14、新建自由流水线,并clone代码
在这里插入图片描述
15、build查看结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值