前言: Gitlab对机器的要求比较高, 如果仅用于学习, 建议在本地跑虚拟机安装Gitlab; 如果用云服务器的话, 最好给服务器分配至少4G内存

以下是Gitlab的安装步骤

1. 先检查依赖: sshd

[root@localhost download]# rpm -qa|grep openssh-server
openssh-server-7.4p1-21.el7.x86_64

[root@localhost download]# ps -e|grep sshd
  695 ?        00:00:00 sshd
 3013 ?        00:00:00 sshd
 3016 ?        00:00:00 sshd

如果没有的话, 需要安装该依赖:
yum install -y curl policycoreutils-python openssh-server
systemctl enable sshd
systemctl start sshd
firewall-cmd --permanent --add-service=http
systemctl reload firewalld

PS: 因为我是root账号, 所以每行命令前不加sudo, 否则就要把sudo加上


2. 检查postfix是否安装

[root@localhost download]# rpm -qa|grep postfix
postfix-2.10.1-9.el7.x86_64

[root@localhost download]# ps -e|grep postfix

如果没有一样要先手动安装:

yum install postfix
systemctl enable postfix
systemctl start postfix

做完以上准备工作后, 开始准备下载安装Gitlab

Gitlab下载地址: https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

由于我是用vagrant安装CentOS, 所以可以通过在Vagrantfile添加一下配置让服务器内存增加到4G:

  config.vm.provider "virtualbox" do |v|
    v.memory = 4096
    v.cpus = 2
  end

3. 找到你要存放的软件的目录

(1) mkdir /usr/local/download   # 创建download目录

(2) cd /usr/local/download

(3) wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.4.0-ce.0.el7.x86_64.rpm

通过以上步骤把Gitlab安装包下载下来

如果wget不能使用, 先通过yum install wget安装


4. 安装并配置GItlab

[root@localhost download]# (1) rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.4.0-ce.0.el7.x86_64.rpm  #安装Gitlab

(2) vi /etc/gitlab/gitlab.rb  # 编辑gitlab.rb文件

(3) external_url 'http://192.168.56.10'     #找到external_url, 并配置成本机的ip地址

(4) gitlab-ctl reconfigure      # 然后运行该命令, 这步执行时间比较久,如果最后执行失败,一般是机器配置不够

5. 安装成功之后重启

gitlab-ctl restart

6. 检查是否安装成功

netstat -tunlp  # 查看端口占用

firewall-cmd --zone=public --list-ports     # 查看防火墙
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload

7. 访问Gitlab: http://192.168.56.10, 刚登登录时会让你重置密码, 用户名是root, 密码则是你设置的那个, 至此, Gitlab就可以使用了.


有些人可能因为某些步骤导致gitlab安装不成功, 那么该如何删除?

1. 停止gitlab

gitlab-ctl stop

2. 卸载gitlab

 rpm -e gitlab-ce

3. 查看gitlab进程

ps -ef|grep gitlab  # 杀掉第一个守护进程, 即: /opt/gitlab/service log
kill -9 4473    # 杀掉该进程, 4473是该进程的pid, 杀掉后需要查看gitlab进程是否还存在

4. 删除gitlab文件

find / -name *gitlab*|xargs rm -rf  # 删除所有包含gitlab的文件及目录
find / -name gitlab |xargs rm -rf   # 删除gitlab-ctl uninstall时自动在root下备份的配置文件
ls /root/gitlab*                    # 看看有没有,有也删除

通过以上几步就可以彻底卸载gitlab

用到的文档资料:

问题

通过npm命令成功安装Vue和vue-cli, 但想调用vue命令查看安装的版本时却提示vue -V 不是内部或外部命令,也不是可运行的程序或批处理文件解决方案

解决方案

对于上面出现的工具命令行不生效问题, 一般而言,就是环境变量没有配置好。由于我使用yarn命令安装vue, 因此需要找到yarn存放vue所在目录。

yarn: C:\Users\hasee\AppData\Local\Yarn\bin
npm: C:\Users\hasee\AppData\Roaming\npm

以上两个是yarn和npm下载的包所在路径, 只要把这两个路径添加到环境变量的Path中, 然后重启, 运行vue -V即可生效。

SpringBoot确实为我们做了很多事情, 但有时候我们想要自己定义一些Handler、Interceptor、ViewResolver、MessageConverter时该怎么做呢?在SpringBoot 1.5版本都是靠重写WebMvcConfigurerAdapter的方法来添加自定义拦截器,消息转换器等。SpringBoot2.0后, 该类被标记为@Deprecated。因此我们只能靠实现WebMvcConfigurer接口来实现。接下来让我们看看这个接口类吧!

阅读全文

ASM概述

  • ASM 是一个Java字节码操纵框架, 它能被用来动态生成类或者增强既有类的功能。
  • ASM可以直接产生二进制Class文件, 也可以在类被加载入虚拟机之前动态改变类的行为, ASM从类文件中读入信息后, 能够改变类行为、分析类信息, 甚至能根据要求生成新类。
  • 目前许多框架如cglib、Hibernate、Spring都直接或者间接地使用ASM操作字节码。
阅读全文