您的位置:首页 > 健康 > 美食 > 贵阳外发加工网_表情包在线制作模板大全_打开一个网站_微信软文

贵阳外发加工网_表情包在线制作模板大全_打开一个网站_微信软文

2025/8/12 17:12:16 来源:https://blog.csdn.net/yangbin1265712/article/details/147121352  浏览:    关键词:贵阳外发加工网_表情包在线制作模板大全_打开一个网站_微信软文
贵阳外发加工网_表情包在线制作模板大全_打开一个网站_微信软文

前提条件

需要配置好docker与docker-compose环境

1.代码准备

mkdir -p /data/opengrok/{etc,src,data}

cd /data/opengrok/src/

# 克隆一个测试项目

git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git

2.创建docker-compose.yml文件(其中最后的cpus与mem_limit请根据实际情况进行高整)

version: "3"

services:

  opengrok:

    container_name: opengrok

    image: opengrok/docker:latest

  

  ports:

      - "8090:8080/tcp"

    environment:

      #SYNC_PERIOD_MINUTES: '1440'

      JAVA_OPTS: "-Xms4g -Xmx64g -Duser.timezone=Asia/Shanghai"

      TZ: "Asia/Shanghai"

    volumes:

       - '/data/opengrok/src/:/opengrok/src'      # source code

       - '/data/opengrok/etc/:/opengrok/etc/'     # folder contains configuration.xml

       - '/data/opengrok/data/:/opengrok/data/'   # index and other things for source code

    cpus: '64.0'

    mem_limit: 96G

2. 下载并运行docker image

sudo docker compose up -d

3. 检查端口在防火墙中是否被禁用

root@PVT-SR588:~# sudo lsof -i:8090

COMMAND      PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

docker-pr 346229 root    7u  IPv4 889519      0t0  TCP *:8090 (LISTEN)

docker-pr 346236 root    7u  IPv6 889520      0t0  TCP *:8090 (LISTEN)

root@PVT-SR588:~#

# 上面是正常的情况,如果被禁用了,可以改为允许访问

sudo ufw allow 8090/tcp

4. 至此,已经可以在其他主机上通过浏览器访问 http://host-ip-addr:8090/ 了,如果出现访问异常,可以查看docker启动log

sudo docker-compose logs

5. 进入容器中配置更新代码的权限,并尝试进行git pull,看能否成功

docker exec -it opengrok bash

cd /opengrok/src/MT8678_yocto/custom

git pull

6. 在容器中安装相关工具包

6.1. repo安装参考:repo安装配置
6.2. 生成公钥并添加到对应的gerrit帐号中
6.3. 设置全局配置 git config --global --add safe.directory * 确保可以正确同步代码
6.4. 修改时区(使用tzselect,并在docker-compose.yml中定义)

7. 更新索引

# 指定MT8676项目更新

JAVA_OPTS="-Xms4g -Xmx64g" /venv/bin/python3 /venv/bin/opengrok-reindex-project --printoutput --api_timeout 8 --jar /opengrok/lib/opengrok.jar -U http://localhost:8080/ -P MT8676 -- --connectTimeout 8 -r dirbased -G -m 256 --leadingWildCards on -T 4 -c /usr/local/bin/ctags -U http://localhost:8080/ -H MT8676

# 定时更新全部索引

# 检查容器中cron是否启动

service cron status

# 重新启动cron服务(时区修改后要重启cron)

service cron start

# 增加定时任务(在终端输入crontab -e进行)

0 1 * * *  /opengrok/update_index.sh

/opengrok/update_index.sh内容如下:

#!/bin/bash

# 设置环境变量

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/java/openjdk/bin

export JAVA_OPTS="-Xms4g -Xmx64g"

# 脚本内容

code_dir="/opengrok/src"

for in $(ls $code_dir ); do

    /venv/bin/python3 /venv/bin/opengrok-reindex-project \

        --printoutput \

        --api_timeout 8 \

        --jar /opengrok/lib/opengrok.jar \

        -U http://localhost:8080/ \

        -P $i \

        -- --connectTimeout 8 \

        -r dirbased \

        -G \

        -m 256 \

        --leadingWildCards on \

        -T 16 \

        -c /usr/local/bin/ctags \

        -U http://localhost:8080/ \

        -H $i

done

报错:

  1. repo sync后的项目在切换并跟踪一个远程分支(要多执行几次,有些会没切换成功)
  2. 如在MT8678_yocto/custom目录下执行git pull时报 git config --global --add safe.directory /opengrok/src/MT8678_yocto/custom,则说明权限设置不符合 Git 的默认安全规则,可执行  git config --global --add safe.directory "*"  来进行全局配置
  3. MT8678_yocto/meta/meta_kde和MT8678_yocto/meta/meta_kde也要切换并跟踪一个远程分支
  4. 如新增项目后要先重启容器注册项目再更新索引

参考文档:

opengrok/docker - Docker 镜像 | Docker Hub --- opengrok/docker - Docker Image | Docker Hub

在ubuntu 22.04 上通过 Docker部署OpenGrok-CSDN博客

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com