Compare commits

...

21 Commits
0.146 ... 0.149

Author SHA1 Message Date
cytopia
26c4fb5419 Merge pull request #266 from devilbox/release-0.149
Release 0.149
2022-12-28 11:55:54 +01:00
cytopia
393ecc5dac Added net-tools 2022-12-27 12:46:33 +01:00
cytopia
8e715503ff Merge pull request #265 from devilbox/release-0.148
Release v0.148
2022-12-26 16:17:33 +01:00
cytopia
c14d2d8881 Added wscat tool to work with websockets 2022-12-26 03:12:03 +01:00
Devilbox Bot
06cb912d1e Merge pull request #262 from devilbox/fix-tools
Fix wkhtmltodf and wp-cli installation
2022-12-15 10:01:34 +01:00
dvlbot
9c552b020c Make README examples copy-able 2022-12-14 18:51:40 +01:00
dvlbot
5613a40247 Ignore expired certs during version check 2022-12-14 18:50:57 +01:00
dvlbot
fada51d70e Updated changelog 2022-12-14 11:36:59 +01:00
dvlbot
d4b1fb1e9e Fix wkhtmltodf and wp-cli installation 2022-12-14 11:35:06 +01:00
Devilbox Bot
a1f7c0ccdd Merge pull request #261 from devilbox/documentation
Update documentation
2022-12-14 11:33:40 +01:00
dvlbot
66428717b4 Update documentation 2022-12-14 11:32:09 +01:00
Devilbox Bot
5cbf875308 Merge pull request #258 from devilbox/dependabot/github_actions/actions/checkout-3
Bump actions/checkout from 2 to 3
2022-12-14 11:15:41 +01:00
dependabot[bot]
a2300738b4 Bump actions/checkout from 2 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-14 10:14:25 +00:00
Devilbox Bot
9b3f06116a Merge pull request #260 from devilbox/issue-assignments
Issue auto-assignment
2022-12-14 11:11:22 +01:00
dvlbot
127c169c85 Issue auto-assignment 2022-12-14 11:10:18 +01:00
Devilbox Bot
3c28fc52d5 Merge pull request #259 from devilbox/issue-templates
Adjust issue templates
2022-12-14 11:08:52 +01:00
dvlbot
f2416e3801 Adjust issue templates 2022-12-14 11:07:01 +01:00
Devilbox Bot
f333e37e15 Merge pull request #257 from devilbox/repository-automation
Setup repository automation
2022-12-14 11:02:33 +01:00
dvlbot
7eafbdb887 Release drafter 2022-12-14 11:00:00 +01:00
dvlbot
6bbfd78a43 Split out linting workflow 2022-12-14 10:58:15 +01:00
dvlbot
737fbbc8ad Setup repository automation 2022-12-14 10:52:18 +01:00
38 changed files with 1034 additions and 93 deletions

View File

@@ -22,6 +22,7 @@ tools_enabled:
- linkcheck
- mdlint
- mupdf-tools
- net-tools
- phalcon-devtools
- php-cs-fixer
- phpcbf
@@ -44,6 +45,7 @@ tools_enabled:
- webpack-cli
- wkhtmltopdf
- wp-cli
- wscat
- yamllint
- yq
- zsh
@@ -336,6 +338,12 @@ tools_available:
all:
type: apt
package: mupdf-tools
net-tools:
disabled: []
check: netstat --version | grep net-tools || (netstat --version; false)
all:
type: apt
package: net-tools
phalcon-devtools:
disabled: [5.2, 5.3, 5.4, 8.2]
check: |
@@ -623,12 +631,12 @@ tools_available:
command: |
DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
run_dep:
@@ -677,7 +685,9 @@ tools_available:
type: custom
command: curl -sS -L --fail "${WPCLI_URL}" -L -o /usr/local/bin/wp
build_dep: []
run_dep: []
# Fixes: sh: 1: less: not found during 'wp help'
# It internally pipes it to less.
run_dep: [less]
pre: WPCLI_URL="https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar"
post: chmod +x /usr/local/bin/wp
5.5:
@@ -689,6 +699,18 @@ tools_available:
5.3:
type: custom
pre: WPCLI_URL="https://github.com/wp-cli/wp-cli/releases/download/v1.5.1/wp-cli-1.5.1.phar"
wscat:
disabled: []
check: wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false)
all:
type: npm
package: wscat
binary: wscat
version:
build_dep: []
run_dep: []
pre:
post:
yamllint:
disabled: []
check: yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false)

106
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,106 @@
---
name: "\U0001F41B Bug report"
description: File a bug report
title: "[Bug]: "
labels: ["bug", "status:triage"]
assignees:
- cytopia
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: input
attributes:
label: (Optional) Error message
description: If you encountered any error message, copy and paste it here. This will be used for googling the issue.
validations:
required: false
- type: textarea
id: what-happened
attributes:
label: What went wrong?
description: What exactly went wrong and what bug did you encounter?
validations:
required: true
- type: textarea
id: expected-behaviour
attributes:
label: Expected behaviour
description: What did you expect to happen instead?
validations:
required: true
- type: textarea
id: steps-to-reproduce
attributes:
label: How can we reproduce the bug?
description: How do you trigger this bug? Please walk us through it step by step in detail. This is crucial in order to triage the bug and support you in resolving it.
validations:
required: true
- type: dropdown
id: host-os
attributes:
label: Host Operating System
description: What operating system are you using?
multiple: false
options:
- Linux
- macOS
- Windows
validations:
required: true
- type: dropdown
id: host-platform
attributes:
label: Host Platform (amd64, arm64, other)
description: What host platform are you running on?
options:
- amd64
- arm64
- other
validations:
required: true
- type: dropdown
attributes:
label: (Linux only) Is SELinux enabled?
description: When using Linux as your host operating system, check if SELinux is enabled or not.
options:
- Yes, SELinux is enabled
- No, SELinux is disabled
- I don't know
- I am not on Linux
validations:
required: true
- type: input
id: docker-version
attributes:
label: Docker version
description: "What Docker version are you using? Please copy and paste the output of `docker --version` into this text area."
validations:
required: true
- type: textarea
id: log-docker
attributes:
label: "Log: docker logs"
description: "Please copy and paste the output of `docker logs` into this text area"
render: shell
validations:
required: true
- type: textarea
attributes:
label: (Optional) Additional information
description: Add any additional information that might help with this bug report.
validations:
required: false

12
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,12 @@
---
blank_issues_enabled: false
contact_links:
- name: Devilbox Discord Chat
url: https://discord.gg/2wP3V6kBj4
about: Please notify or discuss about any other requests here.
- name: Devilbox Discourse Forum
url: https://devilbox.discourse.group/
about: Please ask and answer general questions here.
- name: Devilbox documentation
url: https://devilbox.readthedocs.io/
about: Find the Devilbox documentation here.

View File

@@ -0,0 +1,37 @@
---
name: "\U0001F4DD Documentation"
description: Something is missing, unclear or wrong in the documentation.
title: "[Docs]: "
labels: ["documentation", "status:triage"]
assignees:
- cytopia
body:
- type: textarea
attributes:
label: What is wrong in the documentation?
description: Tell us, what is wrong in the documentation?
validations:
required: false
- type: textarea
attributes:
label: What is unclear in the documentation?
description: Tell us, what is unclear in the documentation?
validations:
required: false
- type: textarea
attributes:
label: What is missing in the documentation?
description: Tell us, what is missing in the documentation?
validations:
required: false
- type: dropdown
attributes:
label: Are you willing to provide a PR to address this?
options:
- "Yes"
- "No"

View File

@@ -0,0 +1,36 @@
---
name: "✨ Feature request"
description: Suggest an idea or feature for this project
title: "[Feature]: "
labels: ["feature", "status:triage"]
assignees: [cytopia]
body:
- type: textarea
attributes:
label: What is your idea or feature suggestion?
description: Tell us, what idea or feature you suggest to be added.
validations:
required: true
- type: textarea
attributes:
label: Benefits
description: Tell us, how this will be beneficial.
validations:
required: false
- type: textarea
attributes:
label: Where can we find information about this?
description: If you are proposing a software or tool, please add relevant links and documentation.
validations:
required: false
- type: dropdown
attributes:
label: Are you willing to provide a PR to address this?
options:
- "Yes"
- "No"

45
.github/ISSUE_TEMPLATE/howto.yml vendored Normal file
View File

@@ -0,0 +1,45 @@
---
name: "❔ Question"
description: How do I do X or Y?
title: "[Question]: "
labels: ["question", "status:triage"]
assignees: [cytopia]
body:
- type: markdown
attributes:
value: |
If this is a generic question, please consider using the [Discord Chat](https://discord.gg/2wP3V6kBj4) or the [Devilbox forum](https://devilbox.discourse.group/) instead.
- type: checkboxes
attributes:
label: Have you already checked elsewhere?
description: You may select more than one.
options:
- label: I have checked existing issues
- label: I have googled already with no luck
- label: I have not done any of the above
validations:
required: true
- type: textarea
attributes:
label: What is your question?
description: Tell the community, what your question is. Be as specific as possible to make it easier for other people to answer your question.
validations:
required: true
- type: textarea
attributes:
label: What have you tried already?
description: Add some details on what you have tried already, so this can be ruled out.
validations:
required: true
- type: textarea
attributes:
label: What is your goal?
description: Tell the community, what you want to accomplish? This might be helpful to know in order to prevent [XY problems](https://en.wikipedia.org/wiki/XY_problem).
validations:
required: true

21
.github/ISSUE_TEMPLATE/report.yml vendored Normal file
View File

@@ -0,0 +1,21 @@
---
name: "🕬 Report"
description: Report something to the maintainer
title: "[Report]: "
labels: ["report", "status:triage"]
assignees:
- cytopia
body:
- type: markdown
attributes:
value: |
Report something to the maintainer such as versions are outdated or pipelines are not running, etc. For anything else please use other issue types. Thanks for taking the time!
- type: textarea
attributes:
label: Report
description: What do you want to report?
validations:
required: true

8
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,8 @@
---
version: 2
updates:
# Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"

105
.github/labels.yml vendored Normal file
View File

@@ -0,0 +1,105 @@
# The labels in this file are automatically synced with the repository
# using the micnncim/action-label-syncer action.
---
###
### Pull Requests
###
- name: C-dependency
color: 1abc9c
description: "Category: Dependency"
- name: PR-block
color: 3498db
description: "Pull Request: Do not merge"
- name: PR-merge
color: 3498db
description: "Pull Request: Merge when ready"
###
### General Issues
###
- name: bug
description: "Bug Report"
color: ee0701
- name: report
description: "General Report"
color: ef561f
- name: feature
description: "Feature Request"
color: dc8b10
- name: question
description: "General question"
color: cc317c
- name: documentation
description: "Documentation related"
color: 45b046
###
### Status: Issue progress
###
- name: "status:triage"
description: "Issue needs Triaging"
color: f2a7cf
- name: "status:confirmed"
description: "Issue is confirmed"
color: f2a7cf
- name: "status:needs-more-info"
description: "Issue needs more info"
color: f2a7cf
###
### Close
###
- name: "issue:invalid"
description: ""
color: f5c7fc
- name: "issue:invalid-type"
description: ""
color: f5c7fc
- name: "issue:duplicate"
description: ""
color: f5c7fc
- name: "issue:wontfix"
description: ""
color: f5c7fc
- name: "issue:stale"
description: ""
color: f5c7fc
###
### Issue types
###
- name: "type:extension"
description: ""
color: 0c9cf2
- name: "type:tool"
description: ""
color: 0c9cf2
- name: "type:env-var"
description: ""
color: 0c9cf2
- name: "type:config"
description: ""
color: 0c9cf2
###
### Issue Host specific
###
- name: "host:linux"
description: ""
color: fbca04
- name: "host:macos"
description: ""
color: fbca04
- name: "host:windows"
description: ""
color: fbca04
- name: "arch:amd64"
description: ""
color: fbca04
- name: "arch:arm64"
description: ""
color: fbca04
- name: "arch:other"
description: ""
color: fbca04

33
.github/release-drafter.yml vendored Normal file
View File

@@ -0,0 +1,33 @@
---
name-template: '$RESOLVED_VERSION 🌈'
tag-template: '$RESOLVED_VERSION'
version-template: '$MAJOR.$MINOR'
categories:
- title: '🚀 Features'
labels:
- 'feature'
- 'enhancement'
- title: '🐛 Bug Fixes'
labels:
- 'fix'
- 'bugfix'
- 'bug'
- title: '🧰 Maintenance'
label: 'chore'
change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks.
version-resolver:
major:
labels:
- 'major'
minor:
labels:
- 'minor'
patch:
labels:
- 'patch'
default: minor
template: |
## Changes
$CHANGES

65
.github/workflows/generator.yml vendored Normal file
View File

@@ -0,0 +1,65 @@
---
# -------------------------------------------------------------------------------------------------
# Job Name
# -------------------------------------------------------------------------------------------------
name: generator
# -------------------------------------------------------------------------------------------------
# When to run
# -------------------------------------------------------------------------------------------------
on:
# Runs on Pull Requests
workflow_dispatch:
pull_request:
paths:
- '.ansible/**'
- '.github/workflows/action.yml'
- '.github/workflows/params.yml'
- 'Dockerfiles/**'
- 'php_modules/**'
- 'php_tools/**'
- 'tests/**'
- 'Makefile'
- '!**.md'
- '!.ansible/ansible.cfg'
# -------------------------------------------------------------------------------------------------
# What to run
# -------------------------------------------------------------------------------------------------
jobs:
generator:
name: "Generator"
runs-on: ubuntu-latest
steps:
# ------------------------------------------------------------
# Setup repository
# ------------------------------------------------------------
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install Python 3.9
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install required Python packages
run: |
pip install yamllib
pip install typing
# ------------------------------------------------------------
# Lint repository
# ------------------------------------------------------------
- name: Lint Changelog
run: |
make lint-changelog
- name: Diff generated Docker files
run: |
make gen-dockerfiles
git diff --quiet || { echo "Build Changes"; git diff; git status; false; }

View File

@@ -27,20 +27,10 @@ jobs:
# Setup repository
# ------------------------------------------------------------
- name: Checkout repository
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install Python 3.9
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install required Python packages
run: |
pip install yamllib
pip install typing
# ------------------------------------------------------------
# Lint repository
# ------------------------------------------------------------
@@ -51,12 +41,3 @@ jobs:
- name: Lint Yaml
run: |
make lint-yaml
- name: Lint Changelog
run: |
make lint-changelog
- name: Diff generated Docker files
run: |
make gen-dockerfiles
git diff --quiet || { echo "Build Changes"; git diff; git status; false; }

19
.github/workflows/release-drafter.yml vendored Normal file
View File

@@ -0,0 +1,19 @@
---
name: Release Drafter
on:
push:
# branches to consider in the event; optional, defaults to all
branches:
- master
jobs:
update_release_draft:
runs-on: ubuntu-latest
steps:
# Drafts your next Release notes as Pull Requests are merged into "master"
- uses: release-drafter/release-drafter@v5
with:
publish: false
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_DRAFTER_TOKEN }}

25
.github/workflows/repository.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
---
name: Repository
on:
push:
branches:
- master
paths:
- .github/labels.yml
jobs:
labels:
name: Labels
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Sync labels
uses: micnncim/action-label-syncer@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
manifest: .github/labels.yml

View File

@@ -4,6 +4,25 @@
## Unreleased
## Release 0.149
### Added
- Added `net-tools` package
## Release 0.148
### Added
- Added `wscat` to work with websockets
## Release 0.147
### Fixed
- Fixed wkhtmltopdf version finder during install
- Fixed wp-cli runtime requirements (needs `less` in order to function)
## Release 0.146
This release adds lots of documentation about recently added features.

View File

@@ -242,6 +242,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -360,6 +361,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (custom) phpcbf --------------------
RUN set -eux \
&& PHPCBF_URL="https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcbf.phar" \
@@ -461,6 +467,13 @@ RUN set -eux \
&& webpack-cli --version | grep -E '[0-9][.0-9]+' || (webpack-cli --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -516,6 +529,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -644,6 +658,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (custom) phpcbf --------------------
RUN set -eux \
&& phpcbf --version | grep -E 'version [0-9][.0-9]+' || (phpcbf --version; false) \
@@ -724,6 +743,11 @@ RUN set -eux \
&& webpack-cli --version | grep -E '[0-9][.0-9]+' || (webpack-cli --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -270,12 +270,14 @@ RUN set -eux \
# ---------- run_deps ----------
dos2unix \
file \
less \
moreutils \
ruby \
# ---------- type: apt ----------
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -394,6 +396,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (custom) php-cs-fixer --------------------
RUN set -eux \
&& PHP_CS_FIXER_URL="https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v2.2.19/php-cs-fixer.phar" \
@@ -532,6 +539,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -581,12 +595,14 @@ RUN set -eux \
# ---------- run_deps ----------
dos2unix \
file \
less \
moreutils \
ruby \
# ---------- type: apt ----------
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -715,6 +731,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (custom) php-cs-fixer --------------------
RUN set -eux \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \
@@ -815,6 +836,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -270,12 +270,14 @@ RUN set -eux \
# ---------- run_deps ----------
dos2unix \
file \
less \
moreutils \
ruby \
# ---------- type: apt ----------
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -417,6 +419,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (custom) php-cs-fixer --------------------
RUN set -eux \
&& PHP_CS_FIXER_URL="https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v2.2.19/php-cs-fixer.phar" \
@@ -555,6 +562,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -604,12 +618,14 @@ RUN set -eux \
# ---------- run_deps ----------
dos2unix \
file \
less \
moreutils \
ruby \
# ---------- type: apt ----------
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -753,6 +769,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (custom) php-cs-fixer --------------------
RUN set -eux \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \
@@ -853,6 +874,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -270,12 +270,14 @@ RUN set -eux \
# ---------- run_deps ----------
dos2unix \
file \
less \
moreutils \
ruby \
# ---------- type: apt ----------
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -433,6 +435,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -610,6 +617,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -659,12 +673,14 @@ RUN set -eux \
# ---------- run_deps ----------
dos2unix \
file \
less \
moreutils \
ruby \
# ---------- type: apt ----------
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -818,6 +834,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -940,6 +961,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -271,6 +271,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont1 \
libxrender1 \
@@ -284,6 +285,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -615,12 +622,12 @@ RUN set -eux \
&& OS_RELEASE="stretch" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -635,6 +642,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -685,6 +699,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont1 \
libxrender1 \
@@ -698,6 +713,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -851,6 +867,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -978,6 +999,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -271,6 +271,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont1 \
libxrender1 \
@@ -284,6 +285,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -615,12 +622,12 @@ RUN set -eux \
&& OS_RELEASE="stretch" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -635,6 +642,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -685,6 +699,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont1 \
libxrender1 \
@@ -698,6 +713,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -851,6 +867,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -978,6 +999,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -271,6 +271,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -284,6 +285,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -615,12 +622,12 @@ RUN set -eux \
&& OS_RELEASE="buster" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -635,6 +642,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -685,6 +699,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -698,6 +713,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -851,6 +867,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -978,6 +999,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -271,6 +271,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -284,6 +285,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -615,12 +622,12 @@ RUN set -eux \
&& OS_RELEASE="buster" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -635,6 +642,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -685,6 +699,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -698,6 +713,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -851,6 +867,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -978,6 +999,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -273,6 +273,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -286,6 +287,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -615,12 +622,12 @@ RUN set -eux \
&& OS_RELEASE="bullseye" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -635,6 +642,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -685,6 +699,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -698,6 +713,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -851,6 +867,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -978,6 +999,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -273,6 +273,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -286,6 +287,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -615,12 +622,12 @@ RUN set -eux \
&& OS_RELEASE="bullseye" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -635,6 +642,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -685,6 +699,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -698,6 +713,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -851,6 +867,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -978,6 +999,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -273,6 +273,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -286,6 +287,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -615,12 +622,12 @@ RUN set -eux \
&& OS_RELEASE="bullseye" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -635,6 +642,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -685,6 +699,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -698,6 +713,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -851,6 +867,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -978,6 +999,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -273,6 +273,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -286,6 +287,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -615,12 +622,12 @@ RUN set -eux \
&& OS_RELEASE="bullseye" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -635,6 +642,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -685,6 +699,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -698,6 +713,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -851,6 +867,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (composer) phalcon-devtools --------------------
RUN set -eux \
&& if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \
@@ -978,6 +999,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -273,6 +273,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -286,6 +287,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -441,6 +443,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (custom) phpcbf --------------------
RUN set -eux \
&& PHPCBF_URL="https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar" \
@@ -568,12 +575,12 @@ RUN set -eux \
&& OS_RELEASE="bullseye" \
&& DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
\
@@ -588,6 +595,13 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& su -c '. /opt/nvm/nvm.sh; npm install --location=global wscat' devilbox \
&& ln -s /opt/nvm/versions/node/$(su -c '. /opt/nvm/nvm.sh; node --version' devilbox)/bin/wscat /usr/local/bin/ \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& pip install --no-cache-dir --no-compile --force-reinstall yamllint \
@@ -638,6 +652,7 @@ RUN set -eux \
dos2unix \
file \
fontconfig \
less \
libfontenc1 \
libxfont2 \
libxrender1 \
@@ -651,6 +666,7 @@ RUN set -eux \
git \
jq \
mupdf-tools \
net-tools \
openssh-client \
rsync \
shellcheck \
@@ -804,6 +820,11 @@ RUN set -eux \
\
&& true
# -------------------- (apt) net-tools --------------------
RUN set -eux \
&& netstat --version | grep net-tools || (netstat --version; false) \
&& true
# -------------------- (custom) phpcbf --------------------
RUN set -eux \
&& phpcbf --version | grep -E 'version [0-9][.0-9]+' || (phpcbf --version; false) \
@@ -904,6 +925,11 @@ RUN set -eux \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' || (wp --allow-root --version; false) \
&& true
# -------------------- (npm) wscat --------------------
RUN set -eux \
&& wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false) \
&& true
# -------------------- (pip) yamllint --------------------
RUN set -eux \
&& yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' || (yamllint --version; false) \

View File

@@ -1,24 +1,18 @@
# PHP-FPM Docker images
[![Release](https://img.shields.io/github/release/devilbox/docker-php-fpm.svg?colorB=orange)](https://github.com/devilbox/docker-php-fpm/releases)
[![](https://img.shields.io/badge/github-devilbox%2Fdocker--php--fpm-red.svg)](https://github.com/devilbox/docker-php-fpm "github.com/devilbox/docker-php-fpm")
[![lint](https://github.com/devilbox/docker-php-fpm/workflows/lint/badge.svg)](https://github.com/devilbox/docker-php-fpm/actions?workflow=lint)
[![build](https://github.com/devilbox/docker-php-fpm/workflows/build/badge.svg)](https://github.com/devilbox/docker-php-fpm/actions?workflow=build)
[![nightly](https://github.com/devilbox/docker-php-fpm/workflows/nightly/badge.svg)](https://github.com/devilbox/docker-php-fpm/actions?workflow=nightly)
[![Release](https://img.shields.io/github/release/devilbox/docker-php-fpm.svg?colorB=orange)](https://github.com/devilbox/docker-php-fpm/releases)
[![Gitter](https://badges.gitter.im/devilbox/Lobby.svg)](https://gitter.im/devilbox/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Discourse](https://img.shields.io/discourse/https/devilbox.discourse.group/status.svg?colorB=%234CB697)](https://devilbox.discourse.group)
[![License](https://img.shields.io/badge/license-MIT-%233DA639.svg)](https://opensource.org/licenses/MIT)
| PHP-FPM | Reference Implementation |
|:----------------:|:------------------------:|
| <a title="Docker PHP-FPM" href="https://github.com/devilbox/docker-php-fpm" ><img height="82px" src="https://raw.githubusercontent.com/devilbox/artwork/master/submissions_banner/cytopia/02/png/banner_256_trans.png" /></a> | <a title="Devilbox" href="https://github.com/cytopia/devilbox" ><img height="82px" src="https://raw.githubusercontent.com/devilbox/artwork/master/submissions_banner/cytopia/01/png/banner_256_trans.png" /></a> |
| Streamlined [PHP-FPM](https://github.com/devilbox/docker-php-fpm) images | The [Devilbox](https://github.com/cytopia/devilbox) |
[![](https://img.shields.io/docker/pulls/devilbox/php-fpm.svg)](https://hub.docker.com/r/devilbox/php-fpm)
[![Discord](https://img.shields.io/discord/1051541389256704091?color=8c9eff&label=Discord&logo=discord)](https://discord.gg/2wP3V6kBj4)
[![Discourse](https://img.shields.io/discourse/https/devilbox.discourse.group/status.svg?colorB=%234CB697&label=Discourse&logo=discourse)](https://devilbox.discourse.group)
**Available Architectures:** `amd64`, `arm64`
[![](https://img.shields.io/docker/pulls/devilbox/php-fpm.svg)](https://hub.docker.com/r/devilbox/php-fpm)
This repository will provide you fully functional PHP-FPM Docker images in different flavours,
versions and packed with different types of integrated PHP modules. It also solves the problem of **[syncronizing file permissions](doc/syncronize-file-permissions.md)** of mounted volumes between the host and the container.
@@ -28,9 +22,21 @@ versions and packed with different types of integrated PHP modules. It also solv
This repository also allows you to quickly generate and **build your own custom PHP-FPM Docker image** with whatever PHP extension your desire for whatever PHP version you want and for any platform you're on (`amd64` or `arm64`). Jump to **[#Build your own image](#build-your-own-image)**.
| PHP-FPM | Reference Implementation |
|:----------------:|:------------------------:|
| <a title="Docker PHP-FPM" href="https://github.com/devilbox/docker-php-fpm" ><img height="82px" src="https://raw.githubusercontent.com/devilbox/artwork/master/submissions_banner/cytopia/02/png/banner_256_trans.png" /></a> | <a title="Devilbox" href="https://github.com/cytopia/devilbox" ><img height="82px" src="https://raw.githubusercontent.com/devilbox/artwork/master/submissions_banner/cytopia/01/png/banner_256_trans.png" /></a> |
| Streamlined [PHP-FPM](https://github.com/devilbox/docker-php-fpm) images | The [Devilbox](https://github.com/cytopia/devilbox) |
<h2><img id="docker-tags" width="20" src="https://github.com/devilbox/artwork/raw/master/submissions_logo/cytopia/01/png/logo_64_trans.png"> Docker Tags</h2>
[![](https://img.shields.io/docker/pulls/devilbox/php-fpm.svg)](https://hub.docker.com/r/devilbox/php-fpm)
```bash
docker pull devilbox/php-fpm:<tag>
```
* [`5.2-base`](Dockerfiles/base/Dockerfile-5.2), [`5.3-base`](Dockerfiles/base/Dockerfile-5.3), [`5.4-base`](Dockerfiles/base/Dockerfile-5.4), [`5.5-base`](Dockerfiles/base/Dockerfile-5.5), [`5.6-base`](Dockerfiles/base/Dockerfile-5.6), [`7.0-base`](Dockerfiles/base/Dockerfile-7.0), [`7.1-base`](Dockerfiles/base/Dockerfile-7.1), [`7.2-base`](Dockerfiles/base/Dockerfile-7.2), [`7.3-base`](Dockerfiles/base/Dockerfile-7.3), [`7.4-base`](Dockerfiles/base/Dockerfile-7.4), [`8.0-base`](Dockerfiles/base/Dockerfile-8.0), [`8.1-base`](Dockerfiles/base/Dockerfile-8.1), [`8.2-base`](Dockerfiles/base/Dockerfile-8.2)
* [`5.2-mods`](Dockerfiles/mods/Dockerfile-5.2), [`5.3-mods`](Dockerfiles/mods/Dockerfile-5.3), [`5.4-mods`](Dockerfiles/mods/Dockerfile-5.4), [`5.5-mods`](Dockerfiles/mods/Dockerfile-5.5), [`5.6-mods`](Dockerfiles/mods/Dockerfile-5.6), [`7.0-mods`](Dockerfiles/mods/Dockerfile-7.0), [`7.1-mods`](Dockerfiles/mods/Dockerfile-7.1), [`7.2-mods`](Dockerfiles/mods/Dockerfile-7.2), [`7.3-mods`](Dockerfiles/mods/Dockerfile-7.3), [`7.4-mods`](Dockerfiles/mods/Dockerfile-7.4), [`8.0-mods`](Dockerfiles/mods/Dockerfile-8.0), [`8.1-mods`](Dockerfiles/mods/Dockerfile-8.1), [`8.2-mods`](Dockerfiles/mods/Dockerfile-8.2)
* [`5.2-prod`](Dockerfiles/prod/Dockerfile-5.2), [`5.3-prod`](Dockerfiles/prod/Dockerfile-5.3), [`5.4-prod`](Dockerfiles/prod/Dockerfile-5.4), [`5.5-prod`](Dockerfiles/prod/Dockerfile-5.5), [`5.6-prod`](Dockerfiles/prod/Dockerfile-5.6), [`7.0-prod`](Dockerfiles/prod/Dockerfile-7.0), [`7.1-prod`](Dockerfiles/prod/Dockerfile-7.1), [`7.2-prod`](Dockerfiles/prod/Dockerfile-7.2), [`7.3-prod`](Dockerfiles/prod/Dockerfile-7.3), [`7.4-prod`](Dockerfiles/prod/Dockerfile-7.4), [`8.0-prod`](Dockerfiles/prod/Dockerfile-8.0), [`8.1-prod`](Dockerfiles/prod/Dockerfile-8.1), [`8.2-prod`](Dockerfiles/prod/Dockerfile-8.2)
@@ -343,17 +349,17 @@ Apart from the provided tools, you will also be able to use the container simila
#### Provide PHP-FPM port to host
```shell
$ docker run -d \
docker run -d -it \
-p 127.0.0.1:9000:9000 \
-t devilbox/php-fpm:7.2-prod
devilbox/php-fpm:7.2-prod
```
#### Alter PHP-FPM and system timezone
```shell
$ docker run -d \
docker run -d -it \
-p 127.0.0.1:9000:9000 \
-e TIMEZONE=Europe/Berlin \
-t devilbox/php-fpm:7.2-prod
devilbox/php-fpm:7.2-prod
```
#### Load custom PHP configuration
@@ -361,48 +367,48 @@ $ docker run -d \
`config/` is a local directory that will hold the PHP *.ini files you want to load into the Docker container.
```shell
# Create config directory to be mounted with dummy configuration
$ mkdir config
mkdir config
# Xdebug 2
$ echo "xdebug.enable = 1" > config/xdebug.ini
echo "xdebug.enable = 1" > config/xdebug.ini
# Xdebug 3
$ echo "xdebug.mode = debug" > config/xdebug.ini
echo "xdebug.mode = debug" > config/xdebug.ini
# Run container and mount it
$ docker run -d \
docker run -d -it \
-p 127.0.0.1:9000:9000 \
-v config:/etc/php-custom.d \
-t devilbox/php-fpm:7.2-prod
devilbox/php-fpm:7.2-prod
```
#### MySQL connect via 127.0.0.1 (via port-forward)
Forward MySQL Port from `172.168.0.30` (or any other IP address/hostname) and Port `3306` to the PHP docker on `127.0.0.1:3306`. By this, your PHP files inside the docker can use `127.0.0.1` to connect to a MySQL database.
```shell
$ docker run -d \
docker run -d -it \
-p 127.0.0.1:9000:9000 \
-e FORWARD_PORTS_TO_LOCALHOST='3306:172.168.0.30:3306' \
-t devilbox/php-fpm:7.2-prod
devilbox/php-fpm:7.2-prod
```
#### MySQL and Redis connect via 127.0.0.1 (via port-forward)
Forward MySQL Port from `172.168.0.30:3306` and Redis port from `redis:6379` to the PHP docker on `127.0.0.1:3306` and `127.0.0.1:6379`. By this, your PHP files inside the docker can use `127.0.0.1` to connect to a MySQL or Redis database.
```shell
$ docker run -d \
docker run -d -it \
-p 127.0.0.1:9000:9000 \
-e FORWARD_PORTS_TO_LOCALHOST='3306:172.168.0.30:3306, 6379:redis:6379' \
-t devilbox/php-fpm:7.2-prod
devilbox/php-fpm:7.2-prod
```
#### Launch Postfix for mail-catching
Once you set `$ENABLE_MAIL=2`, all mails sent via any of your PHP applications no matter to which domain, are catched locally into the `devilbox` account. You can also mount the mail directory locally to hook in with mutt and read those mails.
```shell
$ docker run -d \
docker run -d -it \
-p 127.0.0.1:9000:9000 \
-v /tmp/mail:/var/mail \
-e ENABLE_MAIL=2 \
-t devilbox/php-fpm:7.2-prod
devilbox/php-fpm:7.2-prod
```
#### Webserver and PHP-FPM
@@ -410,20 +416,20 @@ $ docker run -d \
`~/my-host-www` will be the directory that serves the php files (your document root). Make sure to mount it into both, php and the webserver.
```shell
# Start PHP-FPM container
$ docker run -d \
docker run -d -it \
-v ~/my-host-www:/var/www/default/htdocs \
--name php \
-t devilbox/php-fpm:7.2-prod
devilbox/php-fpm:7.2-prod
# Start webserver and link with PHP-FPM
$ docker run -d \
docker run -d -it \
-p 80:80 \
-v ~/my-host-www:/var/www/default/htdocs \
-e PHP_FPM_ENABLE=1 \
-e PHP_FPM_SERVER_ADDR=php \
-e PHP_FPM_SERVER_PORT=9000 \
--link php \
-t devilbox/nginx-mainline
devilbox/nginx-mainline
```
#### Create MySQL Backups
@@ -434,16 +440,16 @@ The MySQL server could be another Docker container linked to the PHP-FPM contain
```
# Start container
$ docker run -d \
docker run -d -it \
-e MYSQL_BACKUP_USER=root \
-e MYSQL_BACKUP_PASS=somepass \
-e MYSQL_BACKUP_HOST=mysql \
-v ~/backups:/shared/backups \
--name php \
-t devilbox/php-fpm:7.2-work
devilbox/php-fpm:7.2-work
# Run database dump
$ docker exec -it php mysqldump-secure
docker exec -it php mysqldump-secure
```
#### Docker Compose reference implementation
@@ -559,8 +565,8 @@ In case you seek help, go and visit the community pages.
<thead>
<tr>
<th width="33%" style="width:33%;"><h3><a target="_blank" href="https://devilbox.readthedocs.io">📘 Documentation</a></h3></th>
<th width="33%" style="width:33%;"><h3><a target="_blank" href="https://gitter.im/devilbox/Lobby">🗪 Chat</a></h3></th>
<th width="33%" style="width:33%;"><h3><a target="_blank" href="https://devilbox.discourse.group">🗫 Forum</a></h3></th>
<th width="33%" style="width:33%;"><h3><a target="_blank" href="https://discord.gg/2wP3V6kBj4">🎮 Discord</a></h3></th>
<th width="33%" style="width:33%;"><h3><a target="_blank" href="https://devilbox.discourse.group">🗪 Forum</a></h3></th>
</tr>
</thead>
<tbody style="vertical-align: middle; text-align: center;">
@@ -571,8 +577,8 @@ In case you seek help, go and visit the community pages.
</a>
</td>
<td>
<a target="_blank" href="https://gitter.im/devilbox/Lobby">
<img title="Chat on Gitter" name="Chat on Gitter" src="https://raw.githubusercontent.com/cytopia/icons/master/400x400/gitter.png" />
<a target="_blank" href="https://discord.gg/2wP3V6kBj4">
<img title="Chat on Discord" name="Chat on Discord" src="https://raw.githubusercontent.com/cytopia/icons/master/400x400/discord.png" />
</a>
</td>
<td>
@@ -583,7 +589,7 @@ In case you seek help, go and visit the community pages.
</tr>
<tr>
<td><a target="_blank" href="https://devilbox.readthedocs.io">devilbox.readthedocs.io</a></td>
<td><a target="_blank" href="https://gitter.im/devilbox/Lobby">gitter.im/devilbox</a></td>
<td><a target="_blank" href="https://discord.gg/2wP3V6kBj4">discord/devilbox</a></td>
<td><a target="_blank" href="https://devilbox.discourse.group">devilbox.discourse.group</a></td>
</tr>
</tbody>
@@ -593,6 +599,8 @@ In case you seek help, go and visit the community pages.
<h2><img id="credits" width="20" src="https://github.com/devilbox/artwork/raw/master/submissions_logo/cytopia/01/png/logo_64_trans.png"> Credits</h2>
Thanks for contributing 🖤
- **[@mrLexx](https://github.com/mrLexx)**
- **[@fibis](https://github.com/fibis)**
- **[@llaville](https://github.com/llaville)**

View File

@@ -390,6 +390,7 @@ Additionally to all of the `slim` tools shown above, the following PHP cli tools
| [mdl][lnk_mdl] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [mdlint][lnk_mdlint] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [mupdf-tools][lnk_mupdf-tools] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [net-tools][lnk_net-tools] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [**node**][lnk_**node**] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [**npm**][lnk_**npm**] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [**nvm**][lnk_**nvm**] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
@@ -416,6 +417,7 @@ Additionally to all of the `slim` tools shown above, the following PHP cli tools
| [webpack-cli][lnk_webpack-cli] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [wkhtmltopdf][lnk_wkhtmltopdf] | | | | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [wp-cli][lnk_wp-cli] | | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [wscat][lnk_wscat] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [yamllint][lnk_yamllint] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [**yarn**][lnk_**yarn**] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| [yq][lnk_yq] | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
@@ -441,6 +443,7 @@ Additionally to all of the `slim` tools shown above, the following PHP cli tools
[lnk_mdl]: ../php_tools/mdl
[lnk_mdlint]: ../php_tools/mdlint
[lnk_mupdf-tools]: ../php_tools/mupdf-tools
[lnk_net-tools]: ../php_tools/net-tools
[lnk_**node**]: https://nodejs.org/en/
[lnk_**npm**]: https://nodejs.org/en/knowledge/getting-started/npm/what-is-npm/
[lnk_**nvm**]: https://github.com/nvm-sh/nvm
@@ -467,6 +470,7 @@ Additionally to all of the `slim` tools shown above, the following PHP cli tools
[lnk_webpack-cli]: ../php_tools/webpack-cli
[lnk_wkhtmltopdf]: ../php_tools/wkhtmltopdf
[lnk_wp-cli]: ../php_tools/wp-cli
[lnk_wscat]: ../php_tools/wscat
[lnk_yamllint]: ../php_tools/yamllint
[lnk_**yarn**]: https://yarnpkg.com/cli/install
[lnk_yq]: ../php_tools/yq

View File

@@ -0,0 +1,7 @@
# net-tools
A collection of programs that form the base set of the NET-3 networking distribution for the Linux operating system. Includes: arp, hostname, ifconfig, netstat, rarp, route, plipconfig, slattach, mii-tool and iptunnel and ipmaddr.
| Platform | Url |
|----------|------------------------------------------------------------------|
| Website | http://sourceforge.net/projects/net-tools/ |

View File

@@ -0,0 +1,7 @@
---
check: netstat --version | grep net-tools || (netstat --version; false)
all:
type: apt
package: net-tools

View File

@@ -0,0 +1,11 @@
---
# The name of the module
name: net-tools
# Exclude module build/installation for the following PHP versions
exclude: []
# In order for this tool to build/install correctly,
# the following tools must have been installed first.
depends: []

View File

@@ -8,12 +8,12 @@ all:
command: |
DEB_HOST_ARCH="$( dpkg-architecture --query DEB_HOST_ARCH )" \
&& WK_URL="$( \
curl -sSL -L --fail https://api.github.com/repos/wkhtmltopdf/packaging/releases \
| awk -F\" "/wkhtmltopdf.*.${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
curl -sS -k -L --fail 'https://wkhtmltopdf.org/downloads.html' \
| awk -F'"' "/wkhtmltopdf.*${OS_RELEASE}_${DEB_HOST_ARCH}\.deb/{print \$(NF-1)}" \
| head -1 \
)" \
&& echo "URL: ${WK_URL}" \
&& curl -sS -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& curl -sS -k -L --fail -o /tmp/wkhtmltopdf.deb "${WK_URL}" \
&& dpkg -i /tmp/wkhtmltopdf.deb \
&& rm -f /tmp/wkhtmltopdf.deb \
run_dep:

View File

@@ -6,7 +6,9 @@ all:
type: custom
command: curl -sS -L --fail "${WPCLI_URL}" -L -o /usr/local/bin/wp
build_dep: []
run_dep: []
# Fixes: sh: 1: less: not found during 'wp help'
# It internally pipes it to less.
run_dep: [less]
pre: WPCLI_URL="https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar"
post: chmod +x /usr/local/bin/wp

View File

@@ -0,0 +1,8 @@
# wscat
WebSocket cat
| Platform | Url |
|----------|------------------------------------------------------------------|
| NPM | https://www.npmjs.com/package/wscat |
| GitHub | https://github.com/websockets/wscat |

View File

@@ -0,0 +1,13 @@
---
check: wscat --version | grep -E '[0-9][.0-9]+' || (wscat --version; false)
all:
type: npm
package: wscat
binary: wscat
version:
build_dep: []
run_dep: []
pre:
post:

View File

@@ -0,0 +1,11 @@
---
# The name of the module
name: wscat
# Exclude module build/installation for the following PHP versions
exclude: []
# In order for this tool to build/install correctly,
# the following tools must have been installed first.
depends: []