Ubuntu16.04搭建gitlab服务器,搭建pip源服务器(两种方式),搭建apt源服务器

简介: 这篇文章是关于如何在Ubuntu 16.04系统上搭建GitLab服务器、pip源服务器(使用pypiserver和NGINX两种方式),以及apt源服务器的详细教程。

前言

因为要换工作地方,单位最近两天要我部署了gitlab服务器,pip源服务器,搭建apt源服务器。现在已经全部搞定,中间遇到了不少坑,特来记录一番。

一、环境叙述

Linux系统:ubuntu16.0.4
username: feng
python 3.6.9
pip 3.6

二、搭建gitlab服务器

下载Ubuntu软件的地址,推荐一下:
curl下载地址:https://curl.haxx.se/download.html
openssh-server、ca-certificates、postfix下载地址:https://pkgs.org/

  1. 安装依赖包
    命令安装:sudo apt-get install curl openssh-server ca-certificates postfix
    离线安装:先解压,在编译安装
    安装postfix

  2. Gitlab下载
    https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/trusty/main/g/gitlab-ce/
    汉化包下载
    https://gitlab.com/xhang/gitlab/-/archive/10-8-stable-zh/gitlab-10-8-stable-zh.tar.bz2

  3. 安装gitlab-ce_10.8.7-ce.0_amd64.deb
    sudo dpkg -i gitlab-ce_10.8.7-ce.0_amd64.deb
    在这里插入图片描述

  4. 根据提示更改 external_url 外部可以访问的本机地址
    sudo vi /etc/gitlab/gitlab.rb
    在这里插入图片描述

  5. 重新配置Gitlab以使更改生效
    sudo gitlab-ctl reconfigure

  6. 重新启动服务
    sudo gitlab-ctl restart

  7. 测试访问
    在这里插入图片描述

  8. 解压汉化包
    tar xf gitlab-10-8-stable-zh.tar.bz2

  9. 安装汉化包
    sudo cp -rf gitlab-10-8-stable-zh/* /opt/gitlab/embedded/service/gitlab-rails/

  10. 重新配置Gitlab以使更改生效
    sudo gitlab-ctl reconfigure

  11. 重新启动服务
    sudo gitlab-ctl restart

  12. 测试
    在这里插入图片描述

  13. 注意:提示502如上截图信息是因为内存太低导致,修改服务器内存配置,并F5多刷新几次即可
    在这里插入图片描述
    初次登录会让你设置密码
    密码不能太短,我设置的是root12345678

  14. 完全卸载Gitlab

复制代码

停止gitlab

sudo gitlab-ctl stop

查看进程

ps -e | grep gitlab

删除所有包含gitlab的文件及目录

find / -name gitlab | xargs rm -rf

卸载

sudo apt-get remove gitlab-ce

检查还有没有卸载的gitlab相关软件

dpkg --get-selections | grep gitlab
gitlab-ce deinstall

再执行

sudo apt-get --purge remove gitlab-ce

三、搭建pip源服务器

1. 使用pypiserver搭建

  1. cd /home/feng
  2. mkdir pypiserver
  3. 将pypiserver-1.3.2-py2.py3-none-any.whl 移动到pypiserver目录中
  4. cd pypiserver
  5. 安装python包 pip install pypiserver-1.3.2-py2.py3-none-any.whl。
  6. 进入到家目录下 cd …
  7. 创建packages目录,用于存放包, mkdir packages
  8. 往里面放一个包 py_trees-2.0.13-py3-none-any.whl 用于测试
  9. 进入到 pypiserver 目录 后台启动:nohup pypi-server -p 8082 ~/packages &
  10. 打开浏览器 输入 本机ip:8082/simple/ 或者localhost:8082/simple/ 出现如下图,则启动成功。
    在这里插入图片描述
  11. 测试装包

回到家目录下。cd /home/feng
配置pip源仓库地址
打开pip.conf :vim .pip/pip.conf
更改如下:
[global]
index-url = http:// 10.18.10.35:8082/simple
[install]
trusted-host=10.18.10.35:8082
保存退出即可。
使用命令 安装 py_trees 包:pip install py_trees
有可能会出现如下报警
在这里插入图片描述
则安装提示 在后面添加参数 --trusted-host 10.18.10.35
在这里插入图片描述
出现上面如图所示,则安装成功。
查看安装的包 : pip show py_trees。
在这里插入图片描述

2. 使用NGINX 代理搭建

四、搭建apt源服务器

总体来说,分三步走
1、将通过apt-mirror将外网下的apt源包都拉取下来。
2、安装nginx,使用nginx 将apt源包反向代理出去。
3、局域网内的机器配置本地镜像源,进行安装使用

1. 安装配置apt-mirror

1、先确认需要下载的镜像源的名称,可以从https://help.ubuntu.com查询
在这里插入图片描述
2、在ubuntu下安装apt-mirror
方式一sudo apt-get install apt-mirror
方式二 下载安装包
3、修改apt-mirror 配置文件
sudo vim /etc/apt/mirror.list
我的配置文件如下

############# config ##################
# 以下注释的内容都是默认配置,如果需要自定义,取消注释修改即可
# set base_path    /var/spool/apt-mirrorset base_path  /opt/mirror/ubuntu
#
# set mirror_path  $base_path/mirror
# set skel_path    $base_path/skel
# set var_path     $base_path/var
# set cleanscript $var_path/clean.sh
# 架构配置,i386/amd64,默认下载与本机相同的架构
# set defaultarch amd64
# set defaultarch  <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads     20
set _tilde 0
#
############# end config ##############
# 下载18.04版本的镜像源bionic,如果需要其他版本,将bionic替换成对应版本的英文名称即可。名称从https://help.ubuntu.com/查询
deb-i386 http://mirrors.aliyun.com/ubuntu bionic main restricted universe multiverse
deb-i386 http://mirrors.aliyun.com/ubuntu bionic-security main restricted universe multiverse
deb-i386 http://mirrors.aliyun.com/ubuntu bionic-updates main restricted universe multiverse
deb-i386 http://mirrors.aliyun.com/ubuntu bionic-proposed main restricted universe multiverse
deb-i386 http://mirrors.aliyun.com/ubuntu bionic-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu bionic-backports main restricted universe multiverse
#deb-src http://mirrors.aliyun.com/ubuntu bionic main restricted universe multiverse #deb-src http://mirrors.aliyun.com/ubuntu bionic-security main restricted universe multiverse #deb-src http://mirrors.aliyun.com/ubuntu bionic-updates main restricted universe multiverse #deb-src http://mirrors.aliyun.com/ubuntu bionic-proposed main restricted universe multiverse #deb-src http://mirrors.aliyun.com/ubuntu bionic-backports main restricted universe multiverse  clean http://mirrors.aliyun.com/ubuntu

4、创建镜像的本地目录(根据配置文件中配置的路径来创建目录)
sudo mkdir -p /opt/mirrors/ubuntu
5、开始拉取镜像
sudo apt-mirror

2. 本地镜像源的部署

1、安装web服务器(nginx)
方式一:sudo apt-get installnginx
方式二:解压编译nginx1.8
2、配置web服务
对应安装方式一:sudo vi /etc/nginx/site
对应安装方式二:sudo vi /usr/local/nginx/conf/nginx.conf
配置如下

server {
        listen 80 default_server;
        listen [::]:80 default_server;
        root /var/www/html;
        index index.html index.htm index.nginx-debian.html;
        server_name _;

        location / {
                try_files $uri $uri/ =404;
                autoindex on;
                autoindex_exact_size off;
                autoindex_localtime on;
        }
}

3、镜像服务挂载
sudo ln -s /opt/mirrors/ubuntu/mirror/mirrors.aliyun.com/ubuntu /var/www/html/ubuntu
4、重启nginx服务
cd /usr/local/nginx/sbin/
sudo ./nginx
使用浏览器访问http://localhost ,如果看到nginx的欢迎页面,则nginx启动成功
使用浏览器访问 http://localhost/ubuntu , 应该可以在web界面看到本地仓库中的软件包。

3. 局域网机器使用本地镜像源

1、修改apt配置文件
sudo vim /etc/apt/sources.list
参考配置如下(127.0.0.1替换成前面部署的机器ip):

deb http://127.0.0.1/ubuntu/ bionic main restricted universe multiverse
deb http://127.0.0.1/ubuntu/ bionic-updates main restricted universe multiverse
deb http://127.0.0.1/ubuntu/ bionic-backports main restricted universe multiverse
deb http://127.0.0.1/ubuntu/ bionic-security main restricted universe multiverse
deb http://127.0.0.1/ubuntu/ bionic-proposed main restricted universe multiverse

2、更新系统
sudo apt-get upgrade
3、更新软件索引
sudo apt-get update
4、软件安装
sudo apt-get install XXX(软件名)

相关文章
|
2天前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1517 4
|
29天前
|
弹性计算 人工智能 架构师
阿里云携手Altair共拓云上工业仿真新机遇
2024年9月12日,「2024 Altair 技术大会杭州站」成功召开,阿里云弹性计算产品运营与生态负责人何川,与Altair中国技术总监赵阳在会上联合发布了最新的“云上CAE一体机”。
阿里云携手Altair共拓云上工业仿真新机遇
|
5天前
|
人工智能 Rust Java
10月更文挑战赛火热启动,坚持热爱坚持创作!
开发者社区10月更文挑战,寻找热爱技术内容创作的你,欢迎来创作!
492 19
|
2天前
|
存储 SQL 关系型数据库
彻底搞懂InnoDB的MVCC多版本并发控制
本文详细介绍了InnoDB存储引擎中的两种并发控制方法:MVCC(多版本并发控制)和LBCC(基于锁的并发控制)。MVCC通过记录版本信息和使用快照读取机制,实现了高并发下的读写操作,而LBCC则通过加锁机制控制并发访问。文章深入探讨了MVCC的工作原理,包括插入、删除、修改流程及查询过程中的快照读取机制。通过多个案例演示了不同隔离级别下MVCC的具体表现,并解释了事务ID的分配和管理方式。最后,对比了四种隔离级别的性能特点,帮助读者理解如何根据具体需求选择合适的隔离级别以优化数据库性能。
179 1
|
8天前
|
JSON 自然语言处理 数据管理
阿里云百炼产品月刊【2024年9月】
阿里云百炼产品月刊【2024年9月】,涵盖本月产品和功能发布、活动,应用实践等内容,帮助您快速了解阿里云百炼产品的最新动态。
阿里云百炼产品月刊【2024年9月】
|
21天前
|
存储 关系型数据库 分布式数据库
GraphRAG:基于PolarDB+通义千问+LangChain的知识图谱+大模型最佳实践
本文介绍了如何使用PolarDB、通义千问和LangChain搭建GraphRAG系统,结合知识图谱和向量检索提升问答质量。通过实例展示了单独使用向量检索和图检索的局限性,并通过图+向量联合搜索增强了问答准确性。PolarDB支持AGE图引擎和pgvector插件,实现图数据和向量数据的统一存储与检索,提升了RAG系统的性能和效果。
|
9天前
|
Linux 虚拟化 开发者
一键将CentOs的yum源更换为国内阿里yum源
一键将CentOs的yum源更换为国内阿里yum源
448 5
|
7天前
|
存储 人工智能 搜索推荐
数据治理,是时候打破刻板印象了
瓴羊智能数据建设与治理产品Datapin全面升级,可演进扩展的数据架构体系为企业数据治理预留发展空间,推出敏捷版用以解决企业数据量不大但需构建数据的场景问题,基于大模型打造的DataAgent更是为企业用好数据资产提供了便利。
314 2
|
23天前
|
人工智能 IDE 程序员
期盼已久!通义灵码 AI 程序员开启邀测,全流程开发仅用几分钟
在云栖大会上,阿里云云原生应用平台负责人丁宇宣布,「通义灵码」完成全面升级,并正式发布 AI 程序员。
|
25天前
|
机器学习/深度学习 算法 大数据
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析
2024“华为杯”数学建模竞赛,对ABCDEF每个题进行详细的分析,涵盖风电场功率优化、WLAN网络吞吐量、磁性元件损耗建模、地理环境问题、高速公路应急车道启用和X射线脉冲星建模等多领域问题,解析了问题类型、专业和技能的需要。
2608 22
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析