Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

如何手动构建arm64版本的zentao-docker镜像 #5

Closed
AbnerZHX opened this issue Mar 28, 2023 · 12 comments
Closed

如何手动构建arm64版本的zentao-docker镜像 #5

AbnerZHX opened this issue Mar 28, 2023 · 12 comments

Comments

@AbnerZHX
Copy link

是使用Dockerfile.arm64版本Dockerfile还是修改Dockerfile中OS_ARCH,还有如何指定构建开源版本?能否贴一下构建命令

@ysicing
Copy link
Contributor

ysicing commented Mar 29, 2023

执行 make build-max-k8s-arm64
可以参考 Makefile#L33

@AbnerZHX
Copy link
Author

执行 make build-max-k8s-arm64 可以参考 Makefile#L33

开源版可以构建arm k8s版本的吗?还是只能使用旗舰版本?
我执行下面的构建命令存在报错
docker build --platform arm64 --build-arg VERSION=18.3 -t zentao-arm64:18.3 -f Dockerfile.arm64 .
在构建中执行RUN install_packages curl wget zip unzip s6 pwgen cron netcat 产生以下报错

[ 3/12] RUN install_packages curl wget zip unzip s6 pwgen cron netcat:
#0 174.8 W: Failed to fetch http://deb.debian.org/debian/dists/bullseye/InRelease Connection timed out [IP: 151.101.110.132 80]
#0 174.8 W: Some index files failed to download. They have been ignored, or old ones used instead.
#0 174.8 Reading package lists...
#0 174.8 Building dependency tree...
#0 174.9 Reading state information...
#0 174.9 Package cron is not available, but is referred to by another package.
#0 174.9 This may mean that the package is missing, has been obsoleted, or
#0 174.9 is only available from another source
#0 174.9
#0 174.9 Package wget is not available, but is referred to by another package.
#0 174.9 This may mean that the package is missing, has been obsoleted, or
#0 174.9 is only available from another source
#0 174.9
#0 174.9 Package zip is not available, but is referred to by another package.
#0 174.9 This may mean that the package is missing, has been obsoleted, or
#0 174.9 is only available from another source
#0 174.9
#0 174.9 E: Package 'wget' has no installation candidate
#0 174.9 E: Package 'zip' has no installation candidate
#0 174.9 E: Unable to locate package s6
#0 174.9 E: Unable to locate package pwgen
#0 174.9 E: Package 'cron' has no installation candidate
#0 174.9 E: Unable to locate package netcat
#0 174.9 apt failed, retrying
#0 475.0 E: Failed to fetch http://deb.debian.org/debian/dists/bullseye/main/binary-arm64/Packages Connection timed out [IP: 203.187.160.131 9011]
#0 475.0 E: Some index files failed to download. They have been ignored, or old ones used instead.
#0 475.0 apt failed, retrying
#0 638.1 W: Failed to fetch http://deb.debian.org/debian/dists/bullseye/main/binary-arm64/Packages Connection timed out [IP: 203.187.160.131 9011]
#0 638.1 W: Some index files failed to download. They have been ignored, or old ones used instead.
#0 638.1 Reading package lists...
#0 638.1 Building dependency tree...
#0 638.1 Reading state information...
#0 638.1 Package cron is not available, but is referred to by another package.
#0 638.1 This may mean that the package is missing, has been obsoleted, or
#0 638.1 is only available from another source
#0 638.1
#0 638.1 Package wget is not available, but is referred to by another package.
#0 638.1 This may mean that the package is missing, has been obsoleted, or
#0 638.1 is only available from another source
#0 638.1
#0 638.1 Package zip is not available, but is referred to by another package.
#0 638.1 This may mean that the package is missing, has been obsoleted, or
#0 638.1 is only available from another source
#0 638.1
#0 638.2 E: Package 'wget' has no installation candidate
#0 638.2 E: Package 'zip' has no installation candidate
#0 638.2 E: Unable to locate package s6
#0 638.2 E: Unable to locate package pwgen
#0 638.2 E: Package 'cron' has no installation candidate
#0 638.2 E: Unable to locate package netcat

对Dockerfile.arm64 添加换源的命令后,可以使用阿里云镜像源安装,但是在后续执行

RUN mkdir -pv /usr/local/etc/php
&& mv /etc/php/7.4/php.ini.tpl /usr/local/etc/php/php.ini.tpl
&& mv /etc/s6/s6-init/run.arm64 /etc/s6/s6-init/run
&& mv /etc/s6/s6-init/envs.arm64 /etc/s6/s6-init/envs
&& mv /etc/s6/s6-available/check_files/run.arm64 /etc/s6/s6-available/check_files/run
&& chown www-data.www-data /apps/zentao -R
&& docker-php-ext-enable ioncube_loader
时,不存在/etc/s6/s6-available/check_files/run.arm64 这个目录

@ysicing
Copy link
Contributor

ysicing commented Mar 29, 2023

好的,我确定一下哈

@AbnerZHX
Copy link
Author

好的,我确定一下哈
我换成sentry了,我看了下执行脚本和rootfs,是不是应该把check_file换成sentry呢

@AbnerZHX
Copy link
Author

好的,我确定一下哈

我换成sentry构建出来以后,启动了下,报错信息是这样的
10:31:59.53

10:31:59.53 Welcome to the Easysoft ZenTao 18.3 container

10:31:59.54 Subscribe to project updates by watching https://www.zentao.net

10:31:59.54 Submit issues and feature requests at https://www.zentao.net/ask.html

10:31:59.54

10:31:59.55 INFO ==> Prepare persistence directories.

/etc/s6/s6-init/run: line 36: make_soft_link: command not found

@ysicing
Copy link
Contributor

ysicing commented Mar 29, 2023

近期通用架构版本改动比较多,arm版本没同步,我这边同步处理一下

@ysicing ysicing self-assigned this Mar 29, 2023
@AbnerZHX
Copy link
Author

近期通用架构版本改动比较多,arm版本没同步,我这边同步处理一下

好的,麻烦您看下我上面那个构建命令可以这么用吗?
docker build --platform arm64 --build-arg VERSION=18.3 -t zentao-arm64:18.3 -f Dockerfile.arm64 .

@ysicing
Copy link
Contributor

ysicing commented Mar 29, 2023

对的,没问题。等我修复arm构建就可以了

@AbnerZHX
Copy link
Author

对的,没问题。等我修复arm构建就可以了
好的谢谢

ysicing pushed a commit that referenced this issue Mar 29, 2023
ysicing pushed a commit that referenced this issue Mar 29, 2023
@ysicing
Copy link
Contributor

ysicing commented Mar 29, 2023

@AbnerZHX 可以通过 fix-arm64-build分支构建

make build-arm
export TAG=18.3-20230329; docker compose -f docker-compose-arm64.yml up -d

@AbnerZHX
Copy link
Author

@AbnerZHX 可以通过 fix-arm64-build分支构建

make build-arm
export TAG=18.3-20230329; docker compose -f docker-compose-arm64.yml up -d

好的,谢谢您

quicklyon bot pushed a commit that referenced this issue Mar 30, 2023
fix arm64 build #5
@ysicing
Copy link
Contributor

ysicing commented Mar 30, 2023

/q label fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants