Как мы можем установить google-chrome-stable на изображение alpine в dockerfile с помощью dpkg? - PullRequest
0 голосов
/ 01 ноября 2019

Я пытаюсь установить google-chrome-stable на изображение alpine с помощью dpkg. Однако dpkg установлен, но он не устанавливает google-chrome-stable и возвращает эту ошибку вместо этого? Есть ли способ установить google-chrome-stable в альпийское изображение, используя dpkg или другим способом?

dpkg: regarding google-chrome-stable_current_amd64.deb containing 

google-chrome-stable:amd64, pre-dependency problem:
 google-chrome-stable:amd64 pre-depends on dpkg (>= 1.14.0)

dpkg: error processing archive google-chrome-stable_current_amd64.deb (--install):
 pre-dependency problem - not installing google-chrome-stable:amd64
Errors were encountered while processing:

Dockerfile:

# Base image
FROM ruby:2.6.3-alpine3.10
# Use node version 10.16.3, yarn version 1.16.0
RUN apk add  --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.10/main/ nodejs=10.16.3-r0
RUN apk add  --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.10/community/ yarn=1.16.0-r0

# Install dependencies
RUN apk upgrade
RUN apk --update \
    add build-base \
    git \
    tzdata \
    nodejs \
    nodejs-npm \
    bash \
    curl \
    yarn \
    gzip \
    postgresql-client \
    postgresql-dev \
    imagemagick \
    imagemagick-dev \
    imagemagick-libs \
    chromium \
    chromium-chromedriver \
    ncurses \
    less \
    dpkg=1.19.7-r0 \
    chromium \
    chromium-chromedriver

RUN dpkg --add-architecture amd64
RUN wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
RUN dpkg -i google-chrome-stable_current_amd64.deb

# This is the base directory used in any
# further COPY, RUN and ENTRYPOINT commands
WORKDIR /webapp
# Copy Gemfile and Gemfile.lock and run bundle install
COPY Gemfile* /webapp/
RUN gem install bundler -v '1.17.3' && \
    bundle _1.17.3_ install

# Copy everything to /webapp for docker image
COPY . ./

EXPOSE 3000

# Run the application
CMD ["rails", "server", "-b", "0.0.0.0"]

1 Ответ

0 голосов
/ 09 ноября 2019

Для установки Google Chrome в Alpine Linux вам необходимо установить пакет Alpine Chromium , используя apk , менеджер пакетов Alpine, просто:

apk add chromium

Хотя Alpine предоставляет dpkg, который полезен для установки облегченных пакетов Debian для определенных целей, вы не сможете использовать его для установки сложных пакетов Debian, поскольку онБудет невозможно удовлетворить многие зависимости Debian. Alpine обычно не совместим с Debian (полагается на musl libc ), поэтому установка нативных пакетов Alpine с использованием apk - верный путь.

...