redmine旧系统迁移到docker中
- 起因
- 新的改变
- 安装尝试
- 处理插件问题
- 自己的镜像
起因
旧系统是Linux,迁移redmine可谓是非常麻烦,安装redmine可是一个非人的折磨。
新的改变
使用docker做好一个环境,以后有需要的时候直接使用即可,不必再重新安装
安装尝试
service:redmine:container_name: redmine# restart: alwaysimage: redmine:4.2.1build:context: ./redminedockerfile: dockerfileports:- 8082:3000environment:TZ: Asia/ShanghaiREDMINE_DB_MYSQL: 数据库ipREDMINE_DB_USERNAME: redmineREDMINE_DB_PASSWORD: xxxxREDMINE_DB_DATABASE: redmineREDMINE_PLUGINS_MIGRATE: 1# REDMINE_SECRET_KEY_BASE: supersecretkeyvolumes:- ./redmine/files:/usr/src/redmine/files# - ./redmine/plugins:/usr/src/redmine/plugins- ./redmine/plugins:/root/plugins # 注意,在迁移过程中,如果直接把插件放进去,有可能导致容器无法驻留,导致无法进行后续的工作
#启动容器
docker compose up redmine -d
处理插件问题
- 说明:把插件分开处理是避免插件放进去后,导致容器无法启动,也就不可能进行容器内处理问题了
# 进入容器
docker exec -it redmine bash# 拷贝插件,redmine容器已经设置了WORKDIR,因此默认进入容器后就是在redmine目录中
cp -r /root/plugins/* plugins/# 插件安装检查
bundle install# 估计会遇到N多错误,但可以通过查看日志进行处理
- 插件安装注意,有可能是要安装一些必要的系统工具,我安装系统工具的做法是做一个自己的镜像
自己的镜像
# FROM redmine:4.2.1
FROM redmine:4.2.10-alpine3.16ENV http_proxy "http://你的代理,你懂的,安装容器必备"
ENV https_proxy "http://你的代理,你懂的,安装容器必备"
ENV no_proxy "192.168.157.1, gems.ruby-china.com, security.debian.org, httpredir.debian.org, deb.debian.org, security.debian.org"
ENV TZ=Asia/Shanghai# RUN apt-get update; apt-get install -y --no-install-recommends ruby-dev libreoffice make gcc
RUN apk update; apk install ruby-dev libreoffice make gcc
# 创建自己的镜像
docker build -t 容器名称:版本 .