我正在使用这个官方的 php Docker 镜像:https : //github.com/docker-library/php/blob/76a1c5ca161f1ed6aafb2c2d26f83ec17360bc68/7.1/alpine/Dockerfile
现在我需要添加对 yaml 扩展的支持,它没有与 php 捆绑在一起。我看到我使用的基本图像使用了 phpize。
我正在尝试这种方法:
FROM php:7.1.5-alpine
# Install and enable yaml extension support to php
RUN apk add --update yaml yaml-dev
RUN pecl channel-update pecl.php.net
RUN pecl install yaml-2.0.0 && docker-php-ext-enable yaml
Run Code Online (Sandbox Code Playgroud)
但我收到此错误:
running: phpize
Configuring for:
PHP Api Version: 20160303
Zend Module Api No: 20160303
Zend Extension Api No: 320160303
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
ERROR: `phpize' …Run Code Online (Sandbox Code Playgroud) pecl install xdebug在 alpine 3.7 镜像构建或容器中运行(或任何其他包)总是会导致
检查 C 编译器是否工作...否
有人知道发生了什么吗?这是相关的 config.log:
configure:2695: $? = 0
configure:2684: cc -v >&5
Using built-in specs.
COLLECT_GCC=cc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-alpine-linux-musl/6.4.0/lto-wrapper
Target: x86_64-alpine-linux-musl
Configured with: /home/buildozer/aports/main/gcc/src/gcc-6.4.0/configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl --target=x86_64-alpine-linux-musl --with-pkgversion='Alpine 6.4.0' --enable-checking=release --disable-fixed-point --disable-libstdcxx-pch --disable-multilib --disable-nls --disable-werror --disable-symvers --enable-__cxa_atexit --enable-default-pie --enable-cloog-backend --enable-languages=c,c++,objc,java,fortran,ada --disable-libssp --disable-libmpx --disable-libmudflap --disable-libsanitizer --enable-shared --enable-threads --enable-tls --with-system-zlib --with-linker-hash-style=gnu
Thread model: posix
gcc version 6.4.0 (Alpine 6.4.0)
configure:2695: $? = 0
configure:2684: cc -V >&5
cc: error: unrecognized command line option …Run Code Online (Sandbox Code Playgroud) git-http-backend最新的 alpine linux 软件包(3.7 及更高版本)中似乎缺少二进制文件。这似乎是因为2.15+包 repo 中的git 版本。
我希望我只是做错了什么,但是包是否有理由丢弃这个二进制文件?
复制:
$ docker exec -it alpine:latest ash
$ apk update
$ apk add git
现在确认cat /usr/libexec/git-core/ | grep http它没有产生git-http-backend结果。
这是非常令人费解的。
有谁知道我可以在哪里举报?
这……有点疯狂?
/bin # echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
/bin # ./app
sh: ./app: not found
/bin # ls -lha | grep app
-rwxr-xr-x 1 root root 48.3M May 9 09:48 app
/bin # pwd
/bin
/bin # app
sh: app: not found
Run Code Online (Sandbox Code Playgroud)
docker 镜像是使用多阶段构建创建的:
FROM golang AS builder
WORKDIR /go/src/github.com/nmiculinic/app/
RUN go get -u github.com/golang/dep/cmd/dep
COPY Gopkg.lock Gopkg.toml ./
RUN dep ensure -vendor-only
COPY . .
RUN GOOS=linux go install ./cmd/app
FROM alpine:latest
RUN apk --no-cache add ca-certificates && update-ca-certificates
COPY --from=builder …Run Code Online (Sandbox Code Playgroud) 我需要在 32 位 ARM 系统(它的 QNAP NAS,CPU:Annapurna Labs Alpine AL-314)上的 Docker 容器中安装支持 uuid-ossp 的 PostgreSQL 9.6.9。
我找到了arm32v6/postgres图像并安装了arm32v6/postgres:9.6.9-alpine. 这工作顺利,但缺少 postgresql-contrib 包。据我了解,我需要安装 postgresql-contrib 才能获得 uuid-ossp 支持。
我在容器中打开了一个 CLI 并尝试:
# apk update
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/armhf/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/armhf/APKINDEX.tar.gz
v3.7.0-215-g16971064c0 [http://dl-cdn.alpinelinux.org/alpine/v3.7/main]
v3.7.0-207-gac61833f9b [http://dl-cdn.alpinelinux.org/alpine/v3.7/community]
OK: 8879 distinct packages available
# apk add postgresql-contrib=9.6.9-r0
ERROR: unsatisfiable constraints:
postgresql-contrib-10.4-r0:
breaks: world[postgresql-contrib=9.6.9-r0]
Run Code Online (Sandbox Code Playgroud)
如何安装正确版本的 postgresql-contrib?或者我可以在 PostgreSQL 9.6.9 中使用 postgresql-contrib-10.4-r0 吗?
我使用 jHipster 5 处理一个项目,运行 GitLab CI 管道并希望构建 API 网关。然而,它基本上无法通过 frontend-maven-plugin:1.6:yarn 安装纱线。
作为基本映像,我使用 maven:3.5.4-jdk-8-alpine。(之前尝试过不同的,如 openjdk-8、alpine:latest 等)
构建初始化为:
mvn verify -Pprod dockerfile:build
Run Code Online (Sandbox Code Playgroud)
这是错误消息:
[INFO] Installing node version v8.9.4
[INFO] Downloading https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-x64.tar.gz to /root/.m2/repository/com/github/eirslett/node/8.9.4/node-8.9.4-linux-x64.tar.gz
[INFO] No proxies configured
[INFO] No proxy was configured, downloading directly
[INFO] Unpacking /root/.m2/repository/com/github/eirslett/node/8.9.4/node-8.9.4-linux-x64.tar.gz into /builds/myapp/node/tmp
[INFO] Copying node binary from /builds/myapp/api-gateway/node/tmp/node-v8.9.4-linux-x64/bin/node to /builds/myapp/api-gateway/node/node
[INFO] Installed node locally.
[INFO] Installing Yarn version v1.3.2
[INFO] Downloading https://github.com/yarnpkg/yarn/releases/download/v1.3.2/yarn-v1.3.2.tar.gz to /root/.m2/repository/com/github/eirslett/yarn/1.3.2/yarn-1.3.2.tar.gz
[INFO] No proxies configured
[INFO] No proxy was configured, downloading directly …Run Code Online (Sandbox Code Playgroud) 我有一个在 Alpine 发行版上运行的 docker 映像,为了让我的一个要求工作 - pocketsphinx==0.1.15,我必须在我的 DockerFile 中安装一些依赖项:
FROM python:3.7-alpine
RUN apk update && \
apk add --virtual build-deps gcc musl-dev && \
apk add --no-cache postgresql-dev && \
apk add ffmpeg && \
apk add swig && \
apk add libasound2-dev && \
rm -rf /var/cache/apk/*
Run Code Online (Sandbox Code Playgroud)
幸运的是, ffmpeg 和 swig 在 Alpine 软件包存储库中都可用,但不幸的是 libasound2-dev 不是。我试图避免从 Alpine 发行版迁移到 Ubuntu,但我不确定是否可以在 Alpine 映像上安装 libasound2-dev。有没有办法实现这一目标?谢谢!
我正在尝试使用我的 dockerfile 安装 php7-mongodb。直到昨天同样有效,但今天 dockerbuild 抛出以下错误
Step 4/12 : RUN apk add php7-mongodb
---> Running in b6713ea15c9d
php7-mongodb (missing):
ERROR: unsatisfiable constraints:
required by: world[php7-mongodb]
The command '/bin/sh -c apk add php7-mongodb' returned a non-zero code: 1
Run Code Online (Sandbox Code Playgroud)
我尝试在 dockerfile 中使用 apk update 和 apk upgrade 但仍然无法正常工作。知道问题是什么吗?
我使用 alpine edge 作为基础版本。
我们可以使用以下 dockerfile 重新创建问题
FROM alpine:edge
RUN echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
RUN apk update && apk upgrade
RUN apk add php7-mongodb
Run Code Online (Sandbox Code Playgroud) Django 努力寻找Pillow,我不太确定为什么。
基于 Linux Alpine 的 Docker 镜像,Django 2.2。以下是相关部分:
RUN apk update \
&& apk add --virtual build-deps gcc python3-dev musl-dev jpeg-dev zlib-dev \
&& apk add --no-cache mariadb-dev mariadb-client
# install dependencies
RUN pip install --upgrade pip
RUN pip install pipenv
RUN pip install mysqlclient
COPY ./Pipfile /usr/src/cms/Pipfile
RUN pipenv install --skip-lock --system --dev
RUN apk del build-deps
Run Code Online (Sandbox Code Playgroud)
[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true
[dev-packages]
[packages]
django = "==2.2"
markdown …Run Code Online (Sandbox Code Playgroud) time.LoadLocation 正常工作,但在我的 docker 实例上引发错误!我如何解决它?
我跑了
t, err := time.LoadLocation("America/New_York")
Run Code Online (Sandbox Code Playgroud)
即使它在我的电脑和 play.golang.org ( https://play.golang.org/p/4VHlaku26T3 )上运行良好,它也会返回错误
但是,当我在 docker 实例上运行它时,返回了一个错误 unknown time zone America/New_York
为什么它没有检测到我请求的时区?
alpine-linux ×10
docker ×8
dockerfile ×2
arm ×1
django ×1
gcc ×1
git ×1
gitlab-ci ×1
go ×1
jhipster ×1
maven ×1
mongodb ×1
pecl ×1
php ×1
phpize ×1
pocketsphinx ×1
postgresql ×1
python ×1
yarnpkg ×1