Docker Container с CentOS 7 и Systemd

Как видно по этой ссылке, существует та же проблема: https://bugs.mysql.com/bug.php?id=75803

Проверьте, установлен ли на компьютере пакет libzip. Если нет, установите его и повторите попытку.

-121--243149-

Оказывается, они действительно эквивалентны, согласно man zshbuiltins (раздел «откреститься»): просто синтаксические альтернативы для той же операции.

Антиклимактическая...

-121--49078-

С помощью zsh (при условии, что вы уже находитесь в X ):

typeset -U subdirs
subdirs=(*/**/rf*.img(.e_'REPLY=${REPLY%%/*}'_))
print -rl -- "${subdirs[@]}"

Здесь */* */rf * .img globs для всех файлов rf * .img во всех подкаталогах, квалификаторах gob . и e выбирают только обычные файлы и соответственно сохраняют только первый компонент пути в массиве, который изначально был определен как массив с уникальными элементами (поэтому дубликаты отсутствуют). Затем он печатает каждый элемент массива.

2
27.06.2018, 17:56
1 ответ

Хотя вы можете запустить службу с помощью systemd в контейнере, я согласен с комментарием xenoid о том, что вам не следует этого делать. И если вам не нужна CentOS, вы можете использовать один из официальных образов от Apache:

https://hub.docker.com/_/httpd

Если вам нужна CentOS, она тоже есть в Docker Hub:

https://hub.docker.com/r/centos/httpd-24-centos7

Из исходного кода видно, что сами Red Hat также не используют systemd:

FROM centos:centos7

# RHSCL httpd24 image.
#
# Volumes:
#  * /opt/rh/httpd24/root/var/www - Datastore for httpd
#  * /var/log/httpd24 - Storage for logs when $HTTPD_LOG_TO_VOLUME is set
# Environment:
#  * $HTTPD_LOG_TO_VOLUME (optional) - When set, httpd will log into /var/log/httpd24

EXPOSE 80
EXPOSE 443

COPY run-*.sh /usr/local/bin/
RUN mkdir -p /var/lib/httpd24
COPY contrib /var/lib/httpd24/

RUN rpmkeys --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 && \
    yum -y --setopt=tsflags=nodocs install https://www.softwarecollections.org/en/scls/rhscl/httpd24/epel-7-x86_64/download/rhscl-httpd24-epel-7-x86_64.noarch.rpm && \
    yum install -y --setopt=tsflags=nodocs gettext hostname bind-utils httpd24 httpd24-mod_ssl && \
    yum clean all

# When bash is started non-interactively, to run a shell script, for example it
# looks for this variable and source the content of this file. This will enable
# the SCL for all scripts without need to do 'scl enable'.
ENV BASH_ENV=/var/lib/httpd24/scl_enable \
    ENV=/var/lib/httpd24/scl_enable \
    PROMPT_COMMAND=". /var/lib/httpd24/scl_enable"


VOLUME ["/opt/rh/httpd24/root/var/www"]
VOLUME ["/var/log/httpd24"]

ENTRYPOINT ["/usr/local/bin/run-httpd24.sh"]
CMD ["httpd", "-DFOREGROUND"]
1
27.01.2020, 21:52

Теги

Похожие вопросы