-
稍稍修改 私有更快乐
之前一直用的这个项目来中转docker镜像到阿里云,然后再给国内的服务器使用,后来发现github有点拉,而且github到阿里云经常失败。 我们恰好有一台CN2的香港杜甫,运行着团队项目使用的Gitea,本来就有Act runner,然后就想着这样管理起来方便点。 就稍微修改了一下docker.yaml,让它可以在gitea中使用。 name: Dockeron: workflow_dispatch: push: branches: [ main ]env: ALIYUN_REGISTRY: "$ secrets.ALIYUN_REGISTRY || vars.ALIYUN_REGISTRY " ALIYUN_NAME_SPACE: "$ secrets.ALIYUN_NAME_SPACE || vars.ALIYUN_NAME_SPACE " ALIYUN_REGISTRY_USER: "$ secrets.ALIYUN_REGISTRY_USER || vars.ALIYUN_REGISTRY_USER " ALIYUN_REGISTRY_PASSWORD: "$ secrets.ALIYUN_REGISTRY_PASSWORD || vars.ALIYUN_REGISTRY_PASSWORD " DOCKER_HOST: "unix:///run/docker.sock"jobs: build: name: Pull runs-on: ubuntu-22.04 steps: - name: Before freeing up disk space run: | echo "Before freeing up disk space" echo "==============================================================================" df -hT echo "==============================================================================" # 增加可用磁盘空间 - name: Maximize build space (Gitea-safe) run: | echo "Prune Docker to free space (no sudo)" docker system df || true docker builder prune -af || true docker system prune -af || true - name: Free up disk space complete run: | echo "Free up disk space complete" echo "==============================================================================" df -hT echo "==============================================================================" - name: Ensure Docker CLI run: | if command -v docker >/dev/null 2>&1; then docker -v …- 9
- 0
-
Docker 迁移 Gitea 到新的服务器
一、迁移前的准备 在新服务器上安装 Docker 和 Docker Compose: # 安装 Dockercurl -fsSL https://get.docker.com | sh# 安装 Docker Composesudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-compose 二、备份现有的 Gitea 数据 在旧服务器上备份 Gitea 数据(假设容器名 gitea,数据挂载在 /mnt/gitea): # 停止 Gitea 容器docker stop gitea# 备份数据卷mkdir ~/gitea_backupdocker cp gitea:/data ~/gitea_backup/# 压缩备份数据tar -czf ~/gitea_backup.tar.gz ~/gitea_backup 三、导出 Docker 镜像 导出 Gitea 镜像: # 查看镜像 IDdocker images# 导出镜像docker save -o ~/gitea_image.tar <gitea_image_id> 四、迁移到新服务器 将备份数据和镜像传输到新服务器: # 使用 scp 传输(替换相应 IP 和路径)scp ~/gitea_backup.tar.gz <new_server_ip>:/path/to/scp ~/gitea_image.tar <new_server_ip>:/path/to/ 五、在新服务器上恢复 Gitea 加载镜像并创建运行环境: # 加载镜像docker load -i /path/to/gitea_image.tar# 创建数据目录mkdir -p /mnt/gitea# 解压备份数据tar -xzf /path/to/gitea_backup.tar.gz -C ~/mv ~/gitea_backup/data/* /mnt/gitea/# 创建 docker-compose.ymlcat <<EOF > ~/docker-compose.ymlversion: '3'services: gitea: image: <your_gitea_image>:<tag> container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 volumes: - /mnt/gitea:/data ports: - "3000:3000" - "22:22" restart: alwaysEOF 启动 Gitea: cd ~docker-compose up -d 六、验证迁移结果 在浏览器访问新服务器的 IP 地址(如 http://<new_server_ip>:3000),确认 Gitea 正常运行。 七、结尾 通过以上步骤,您可以成功地将 Gitea 从旧服务器迁移到新服务器。在整个迁移过程中,确保备份数据的完整性和安全性至关重要。根据需要,您还可以调整 docker-compose.yml 文件中的配置参数,以优化 Gitea 的性能和可用性。 如果使用的MySQL是容器外的,记得给数据库上一个可以访问的权限,或开放3306端口。- 56
- 0


