GitLab (через Docker) на NAS QNAP с процессором ARM («ошибка формата exec») - PullRequest
0 голосов
/ 17 сентября 2018

Я только что купил NAS с QNAP TS-832X (Прошивка: 4.3.4.0695, сборка 20180830).

Эта машина оснащена процессором ARM (четырехъядерный процессор ARM Cortex-A57 от Annapurna Labs Alpine AL324 @ 1,70 ГГц).

Я купил его только для установки на него GitLab, но официальный образ, похоже, не работает.

Когда я пытаюсь запустить образ, он терпит неудачу.

[~] # docker run -d --name gitlab-server --hostname build1 -p 10080:10080 -p 10022:22 -p 10443:443 -v /share/GitLab/config:/etc/gitlab -v /share/GitLab/logs:/var/log/gitlab -v /share/GitLab/data:/var/opt/gitlab --restart always gitlab/gitlab-ce:latest
[~] # docker ps
CONTAINER ID        IMAGE                     COMMAND             CREATED             STATUS                        PORTS               NAMES
a176158729ad        gitlab/gitlab-ce:latest   "/assets/wrapper"   5 seconds ago       Restarting (1) 1 second ago                       gitlab-server
[~] # docker logs a1
standard_init_linux.go:185: exec user process caused "exec format error"
standard_init_linux.go:185: exec user process caused "exec format error"
standard_init_linux.go:185: exec user process caused "exec format error"
standard_init_linux.go:185: exec user process caused "exec format error"
standard_init_linux.go:185: exec user process caused "exec format error"
standard_init_linux.go:185: exec user process caused "exec format error"
standard_init_linux.go:185: exec user process caused "exec format error"

После поиска в Google я подумал, что это может быть вызвано архитектурой хоста, поэтому я попытался запустить ulm0/gitlab, но с тем же результатом.

Я также пробовал другие изображения с "ARM" в их тегах, например arm64v8/ubuntu Этот даже не дал никаких журналов.

[~] # docker ps
CONTAINER ID        IMAGE                     COMMAND             CREATED             STATUS                          PORTS               NAMES
2b2b68bc912c        arm64v8/ubuntu:latest     "/bin/bash"         7 seconds ago       Restarting (0) 1 second ago                         ubuntu-arm
a176158729ad        gitlab/gitlab-ce:latest   "/assets/wrapper"   2 hours ago         Restarting (1) 51 seconds ago                       gitlab-server
[~] # docker logs 2b
[~] #

uname -a

Linux build1 4.2.8 #2 SMP Thu Aug 30 07:33:01 CST 2018 aarch64 GNU/Linux

версия докера

Client:
 Version:      17.09.1-ce
 API version:  1.32
 Go version:   go1.8.3
 Git commit:   a9fd393
 Built:        Fri Aug  3 04:31:20 2018
 OS/Arch:      linux/arm64

Server:
 Version:      17.09.1-ce
 API version:  1.32 (minimum version 1.12)
 Go version:   go1.8.3
 Git commit:   a9fd393
 Built:        Fri Aug  3 04:31:20 2018
 OS/Arch:      linux/arm64
 Experimental: false

1 Ответ

0 голосов
/ 21 сентября 2018

Жаль слышать о вашей проблеме, к сожалению, я не верю, что есть официальные GitLab Docker image для устройств ARM.

Из личного опыта я обнаружил, что большинство разработчиков создают образ Docker для устройств Intel, но не работают на устройствах ARM.

Эта тема обсуждалась на форумах QNAP уже:

Мой QNAP основан на Intel, поэтому я не могу подтвердить ваши результаты, но приведу несколько предложений со страницы о докере в Raspberry Pi:

"DockerИспользуемые вами приложения должны быть упакованы специально для архитектуры ARM! Приложения на основе Docker, упакованные для x86 / x64, не будут работать и приведут к ошибке, такой как: FATA [0003] Ответ об ошибке от демона: Невозможно запустить контейнер 0f0fa3f8e510e53908e6a459e817d600b9649e621e6e61de654ошибка формата. Помните об этом при поиске приложений в Docker Hub - источнике для приложений / изображений Docker. Если вы видите ключевое слово RPI или ARM в заголовке или описании, это приложение обычно можно использовать для Raspberry Pi. "

TS-831X имеет "AnnapurnaLabs", амазонская компания Alpine AL-314 Quadпроцессор Cortex-A15 с частотой 1,7 ГГц, представляющий собой архитектуру ARM, очень похожую на Raspberry Pi ..

Итак, я подозреваю, что вы можете быть ограничены в том, к каким изображениям Docker у вас есть доступ, и если вы не являетесь официальным /Канонический сопровождающий приложения также создает ARM-сборку. Возможно, вы застряли либо с прокруткой, либо с доверием стороннего любителя, чтобы сделать это ...

Мне неприятно это говорить, но я быскажем, вы должны были выбрать Intel один.

У меня есть QNAP TS-251 + (на базе Intel) с 8 ГБ ОЗУ и 2x8 ТБ в конфигурации RAID, и это прекрасно работает для моего экземпляра Gitlab, в дополнение кзапуск PLEX и его использование в качестве веб-сервера.

Я бы также предложил, когда вы, наконец, настроите его и запустите для сопоставления томов с каталогами, которые легко доступны, чтобы вы могли легко вносить изменения в конфигурацию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...