Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
G
Gzz Images
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nanahira
Gzz Images
Commits
c0105f9e
Commit
c0105f9e
authored
Aug 28, 2020
by
Li Mi
Committed by
GitHub
Aug 28, 2020
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #1 from gzzchh/multi-stage-php
Multi stage php 好,很有精神
parents
1886a8cb
357141c2
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
78 additions
and
69 deletions
+78
-69
.github/workflows/php-fpm.yml
.github/workflows/php-fpm.yml
+4
-3
php-fpm/Dockerfile.php.73
php-fpm/Dockerfile.php.73
+36
-34
php-fpm/Dockerfile.php.74
php-fpm/Dockerfile.php.74
+38
-32
No files found.
.github/workflows/
build
.yml
→
.github/workflows/
php-fpm
.yml
View file @
c0105f9e
...
...
@@ -3,8 +3,8 @@ name: 构建 PHP-FPM 镜像
# 触发条件:在 push 到 master 分支后
on
:
push
:
paths
:
-
"
php-fpm/**"
#
paths:
#
- "php-fpm/**"
# 任务
jobs
:
...
...
@@ -23,6 +23,7 @@ jobs:
registry
:
ccr.ccs.tencentyun.com
repository
:
gzzchh/stacks
tags
:
php-fpm-73
build-php-fpm-74
:
runs-on
:
ubuntu-latest
steps
:
...
...
@@ -34,7 +35,7 @@ jobs:
username
:
${{ secrets.TKE_USERNAME }}
password
:
${{ secrets.TKE_PASSWORD }}
path
:
./php-fpm
dockerfile
:
./php-fpm/Dockerfile.php.7
3
dockerfile
:
./php-fpm/Dockerfile.php.7
4
registry
:
ccr.ccs.tencentyun.com
repository
:
gzzchh/stacks
tags
:
php-fpm-74
php-fpm/Dockerfile.php.73
View file @
c0105f9e
FROM php:7.3-fpm
FROM php:7.3-fpm
AS builder
# COPY pip.conf /root/.pip/pip.conf
ADD https://raw.githubusercontent.com/mlocati/docker-php-extension-installer/master/install-php-extensions /usr/local/bin/
# RUN sed -i 's/deb.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list && \
# sed -i 's/security.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list && \
RUN cat /etc/apt/sources.list && \
# 系统更新
DEBIAN_FRONTEND=noninteractive && \
apt update && apt upgrade -y &&\
# 安装组件
apt update && \
apt install -y --no-install-recommends \
bash \
unzip \
...
...
@@ -52,38 +51,41 @@ RUN cat /etc/apt/sources.list && \
# Imagick
chmod uga+x /usr/local/bin/install-php-extensions && sync && \
install-php-extensions imagick && \
docker-php-source delete && \
# Composer相关部分
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
docker-php-source delete
# 只安装需要的东西
FROM php:7.4-fpm AS run
# RUN sed -i 's/deb.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list && \
# sed -i 's/security.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list
RUN cat /etc/apt/sources.list && \
DEBIAN_FRONTEND=noninteractive && \
# 安装组件
apt update && \
apt install -y --no-install-recommends \
bash \
unzip \
openssh-client \
wget \
curl \
libcurl4 \
openssl \
git \
ca-certificates \
libzip4 \
libxslt1.1 \
libpq5 \
libmagickwand-6.q16-6 \
libmagickwand-6.q16hdri-6 \
libpng16-16
# 拷贝编译好的扩展
COPY --from=0 /usr/local/lib/php/extensions /usr/local/lib/php/extensions
COPY --from=0 /usr/local/etc/php/conf.d /usr/local/etc/php/conf.d
# 安装 Composer
RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
php composer-setup.php --quiet --install-dir=/usr/bin --filename=composer && \
rm composer-setup.php && \
# composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/ && \
# composer global require hirak/prestissimo && \
# composer global require slince/composer-registry-manager ^2.0 && \
# composer repo:use tencent && \
# composer clearcache && \
# Python设定
# update-alternatives --install /usr/bin/python python /usr/bin/python3 1 && \
# update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1 && \
# pip3 install -U pip && \
# 清理
apt remove gcc augeas-lenses python3-dev make autoconf -y && apt autoremove -y && \
apt remove -y \
libzip-dev \
libbz2-dev \
libcurl4-openssl-dev \
libmcrypt-dev \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libicu-dev \
libxslt-dev \
libffi-dev \
libsqlite3-dev \
libpq-dev && \
rm -rf /var/lib/apt/lists/* && \
# 处理用户的部分
addgroup --gid 1000 www && \
rm composer-setup.php
# 处理用户的部分
RUN addgroup --gid 1000 www && \
adduser --disabled-password --gecos "" --uid 1000 --gid 1000 www
COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT [ "/entrypoint.sh" ]
php-fpm/Dockerfile.php.74
View file @
c0105f9e
FROM php:7.4-fpm
FROM php:7.4-fpm
AS builder
# COPY pip.conf /root/.pip/pip.conf
ADD https://raw.githubusercontent.com/mlocati/docker-php-extension-installer/master/install-php-extensions /usr/local/bin/
# RUN sed -i 's/deb.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list && \
# sed -i 's/security.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list
&& \
# sed -i 's/security.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list
RUN cat /etc/apt/sources.list && \
# 系统更新
DEBIAN_FRONTEND=noninteractive && \
apt update &&
apt upgrade -y &&
\
apt update && \
# 安装组件
apt install -y --no-install-recommends \
bash \
...
...
@@ -57,34 +56,41 @@ RUN cat /etc/apt/sources.list && \
# Composer相关部分
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
php composer-setup.php --quiet --install-dir=/usr/bin --filename=composer && \
rm composer-setup.php && \
# composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/ && \
# composer global require hirak/prestissimo && \
# composer global require slince/composer-registry-manager ^2.0 && \
# composer repo:use tencent && \
# composer clearcache && \
# Python设定
# update-alternatives --install /usr/bin/python python /usr/bin/python3 1 && \
# update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1 && \
# pip3 install -U pip && \
# 清理
apt remove gcc augeas-lenses python3-dev make autoconf -y && apt autoremove -y && \
apt remove -y \
libzip-dev \
libbz2-dev \
libcurl4-openssl-dev \
libmcrypt-dev \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libicu-dev \
libxslt-dev \
libffi-dev \
libsqlite3-dev \
libpq-dev && \
rm -rf /var/lib/apt/lists/* && \
# 处理用户的部分
addgroup --gid 1000 www && \
rm composer-setup.php
# 只安装需要的东西
FROM php:7.4-fpm AS run
# RUN sed -i 's/deb.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list && \
# sed -i 's/security.debian.org/mirrors.cloud.tencent.com/g' /etc/apt/sources.list
RUN cat /etc/apt/sources.list && \
DEBIAN_FRONTEND=noninteractive && \
# 安装组件
apt update && \
apt install -y --no-install-recommends \
bash \
unzip \
openssh-client \
wget \
curl \
libcurl4 \
openssl \
git \
ca-certificates \
libzip4 \
libxslt1.1 \
libpq5 \
libmagickwand-6.q16-6 \
libmagickwand-6.q16hdri-6 \
libpng16-16
# 拷贝编译好的扩展
COPY --from=0 /usr/local/lib/php/extensions /usr/local/lib/php/extensions
COPY --from=0 /usr/local/etc/php/conf.d /usr/local/etc/php/conf.d
# 安装 Composer
RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
php composer-setup.php --quiet --install-dir=/usr/bin --filename=composer && \
rm composer-setup.php
# 处理用户的部分
RUN addgroup --gid 1000 www && \
adduser --disabled-password --gecos "" --uid 1000 --gid 1000 www
COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT [ "/entrypoint.sh" ]
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment