Compare commits

..

52 Commits

Author SHA1 Message Date
Michel Roegl-Brunner
39aed92f08
[Workflow]Update autolabeler-config.json 2025-01-16 13:01:20 +01:00
Michel Roegl-Brunner
85387563f0
[core] Recreate Update JSON Workflow (#1523) 2025-01-16 12:12:13 +01:00
community-scripts-pr-app[bot]
5977f8f936
Update CHANGELOG.md (#1517)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-16 09:42:03 +01:00
CanbiZ
a15a59e615
add libapache2-mod-php 2025-01-16 09:18:02 +01:00
CanbiZ
14dfaa9bde
fix php-pear & php8.2 deps 2025-01-16 09:13:07 +01:00
github-actions[bot]
75778976d0
Update .app-headers file (#1518)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-16 09:05:49 +01:00
bvdberg01
c45085a51d
New script: phpIPAM (#1503)
* Added phpipam

* PR feedback

* fix json

* Fix php version

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-01-16 08:34:02 +01:00
community-scripts-pr-app[bot]
959a7b4b14
Update CHANGELOG.md (#1504)
Some checks are pending
Shellcheck / Shellcheck (push) Waiting to run
Create Changelog Pull Request / update-changelog-pull-request (push) Waiting to run
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-15 15:31:15 +01:00
CanbiZ
5da06e75e7
Update update_json_date.yml 2025-01-15 15:08:44 +01:00
Dominik Siebel
2aed45fa61
fix: actually add the given root SSH key to the container (#1502) 2025-01-15 15:01:24 +01:00
CanbiZ
7614034784
Update update_json_date.yml
Some checks are pending
Shellcheck / Shellcheck (push) Waiting to run
Create Changelog Pull Request / update-changelog-pull-request (push) Waiting to run
2025-01-15 11:36:10 +01:00
CanbiZ
0f06725fdc
Update update_json_date.yml 2025-01-15 11:34:20 +01:00
CanbiZ
5c16955a8e
Update update_json_date.yml 2025-01-15 11:32:11 +01:00
CanbiZ
2c8aab24d0 Merge branch 'main' of https://github.com/community-scripts/ProxmoxVE 2025-01-15 11:31:55 +01:00
CanbiZ
9cc07cc6e1 bak 2025-01-15 11:31:48 +01:00
CanbiZ
047667c428
Update update_json_date.yml 2025-01-15 11:27:53 +01:00
CanbiZ
147ba0e78d backup 2 files 2025-01-15 11:26:01 +01:00
CanbiZ
d3b0becfe6 Switch from workflows to scripts folder 2025-01-15 11:25:31 +01:00
CanbiZ
d20d0428dc
Rename update_json_date.sh1 to update_json_date.sh 2025-01-15 11:21:51 +01:00
CanbiZ
0368ce36d1
Rename update_json_date.sh to update_json_date.yml 2025-01-15 11:21:38 +01:00
CanbiZ
757b5bd267
Create update_json_date.sh1 2025-01-15 11:21:26 +01:00
CanbiZ
4d0632fea0
Create update_json_date.sh 2025-01-15 11:19:32 +01:00
CanbiZ
69288b197f
Update check_and_update_json_date.yml 2025-01-15 11:13:55 +01:00
CanbiZ
12a61a1d71
Update check_and_update_json_date.yml 2025-01-15 11:12:18 +01:00
CanbiZ
d186557488
Update check_and_update_json_date.yml 2025-01-15 11:09:31 +01:00
community-scripts-pr-app[bot]
db6390f791
Update CHANGELOG.md (#1498) 2025-01-15 11:08:48 +01:00
CanbiZ
41c4b11575
Update check_and_update_json_date.yml 2025-01-15 11:04:03 +01:00
CanbiZ
bf89a037bd
Update check_and_update_json_date.yml 2025-01-15 11:00:17 +01:00
CanbiZ
e503ce3806
Update check_and_update_json_date.yml 2025-01-15 10:59:01 +01:00
CanbiZ
c934085b16
Update check_and_update_json_date.yml 2025-01-15 10:56:24 +01:00
CanbiZ
c57f0be737
Update check_and_update_json_date.yml 2025-01-15 10:54:23 +01:00
CanbiZ
e6530e14dd
Update check_and_update_json_date.yml 2025-01-15 10:52:34 +01:00
CanbiZ
9174536e95
Update check_and_update_json_date.yml 2025-01-15 10:50:30 +01:00
CanbiZ
aa3a3997f0
Update check_and_update_json_date.yml 2025-01-15 10:45:22 +01:00
CanbiZ
37da2e5e1c
Update check_and_update_json_date.yml 2025-01-15 10:41:47 +01:00
CanbiZ
18538897ba
Update check_and_update_json_date.yml 2025-01-15 10:40:38 +01:00
CanbiZ
dbfb72807a
Update check_and_update_json_date.yml 2025-01-15 10:37:30 +01:00
CanbiZ
e756c49e50
Update check_and_update_json_date.yml 2025-01-15 10:25:38 +01:00
CanbiZ
4ae131e102
Update check_and_update_json_date.yml 2025-01-15 10:21:44 +01:00
CanbiZ
f498f349f3
Update check_and_update_json_date.yml 2025-01-15 10:18:33 +01:00
CanbiZ
8e525611bd Merge branch 'main' of https://github.com/community-scripts/ProxmoxVE 2025-01-15 09:58:44 +01:00
CanbiZ
910f3bb6f4 switch shellcheck to backup 2025-01-15 09:58:37 +01:00
CanbiZ
c8319f044c
Update check_and_update_json_date.yml 2025-01-15 09:58:13 +01:00
CanbiZ
ac61a925cc
Fix: Add FFMPEG for OpenWebUI (#1497) 2025-01-15 09:04:52 +01:00
community-scripts-pr-app[bot]
4ce474382a
Update CHANGELOG.md (#1493)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Waiting to run
Shellcheck / Shellcheck (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-14 22:21:14 +01:00
Michel Roegl-Brunner
424dc26720
Hotfix build.func: Error when tags are empty (#1492)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Waiting to run
Shellcheck / Shellcheck (push) Has been cancelled
Auto Update .app-headers / update-app-headers (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
2025-01-14 21:43:37 +01:00
CanbiZ
b9829165cf
adjust date opengist.json 2025-01-14 19:25:42 +01:00
community-scripts-pr-app[bot]
3b1c43381e
Update CHANGELOG.md (#1487)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-14 18:35:22 +01:00
github-actions[bot]
cb496d74f4
Update .app-headers file (#1486)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-14 18:33:53 +01:00
CanbiZ
33cd0cb2f1
Create New LXC: Wordpress (#1485) 2025-01-14 18:32:33 +01:00
community-scripts-pr-app[bot]
325084f8ca
Update CHANGELOG.md (#1481)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-14 16:28:49 +01:00
Michel Roegl-Brunner
349cfb28b5
Update tianji-install.sh: Add OPENAI_API_KEY to .env (#1480) 2025-01-14 16:23:46 +01:00
22 changed files with 564 additions and 58 deletions

View File

@ -50,7 +50,7 @@
"maintenance": [
{
"fileStatus": null,
"includeGlobs": ["*.md", ".github/**"],
"includeGlobs": ["*.md", ".github/**", "misc/*.func", "ct/create_lxc.sh"],
"excludeGlobs": []
}
],
@ -61,4 +61,4 @@
"excludeGlobs": []
}
]
}
}

View File

@ -34,8 +34,8 @@ jobs:
# Step 4: Run the generate-app-headers.sh script to update .app-headers
- name: Run generate-app-headers.sh to update .app-headers
run: |
chmod +x .github/workflows/generate-app-headers.sh
.github/workflows/generate-app-headers.sh
chmod +x .github/workflows/scripts/generate-app-headers.sh
.github/workflows/scripts/generate-app-headers.sh
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@ -0,0 +1,60 @@
name: Update date_created in JSON files
on:
# Dieser Trigger wird für das Öffnen von PRs sowie für das Aktualisieren von offenen PRs verwendet
pull_request:
types: [opened, synchronize]
schedule:
# Dieser Trigger wird 4x am Tag ausgelöst, um sicherzustellen, dass das Datum aktualisiert wird
- cron: "0 0,6,12,18 * * *" # Führt alle 6 Stunden aus
workflow_dispatch: # Manuelle Ausführung des Workflows möglich
jobs:
update-date:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install yq
run: |
sudo apt-get update
sudo apt-get install -y yq
- name: Set the current date
id: set_date
run: echo "TODAY=$(date -u +%Y-%m-%d)" >> $GITHUB_ENV
- name: Check for changes in PR
run: |
# Hole den PR-Branch
PR_BRANCH="refs/pull/${{ github.event.pull_request.number }}/merge"
git fetch origin $PR_BRANCH
# Liste alle JSON-Dateien im PR auf, die geändert wurden
CHANGED_JSON_FILES=$(git diff --name-only origin/main...$PR_BRANCH | grep '.json')
if [ -z "$CHANGED_JSON_FILES" ]; then
echo "No JSON files changed in this PR."
exit 0
fi
# Gehe alle geänderten JSON-Dateien durch und aktualisiere das Datum
for file in $CHANGED_JSON_FILES; do
echo "Updating date_created in $file"
# Setze das aktuelle Datum
yq eval ".date_created = \"${{ env.TODAY }}\"" -i "$file"
git add "$file"
done
- name: Commit and push changes
run: |
# Prüfe, ob es Änderungen gibt und committe sie
git config user.name "json-updater-bot"
git config user.email "github-actions[bot]@users.noreply.github.com"
git commit -m "Update date_created to ${{ env.TODAY }}" || echo "No changes to commit"
# Push zurück in den PR-Branch
git push origin $PR_BRANCH

View File

@ -1,45 +0,0 @@
name: Check and Update JSON Date
on:
pull_request:
types: [synchronize, opened, reopened, edited]
paths:
- "json/*.json"
jobs:
update-date:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.12
- name: Install dependencies
run: pip install jq
- name: Find and Update JSON files in /json folder
run: |
TODAY=$(date +%Y-%m-%d)
for file in $(git diff --diff-filter=A --name-only HEAD | grep '^json/.*\.json$'); do
if jq -e '.date_created' $file > /dev/null 2>&1; then
echo "Updating date_created in $file"
jq --arg date "$TODAY" '.date_created = $date' $file > temp.json && mv temp.json $file
git add $file
fi
done
- name: Commit changes
run: |
git config user.name "GitHub Action"
git config user.email "action@github.com"
git commit -m "Update date_created in new JSON files" || echo "No changes to commit"
- name: Push changes
uses: ad-m/github-push-action@v0.6.0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}

View File

@ -0,0 +1,23 @@
#!/usr/bin/env bash
# Verzeichnis, das die JSON-Dateien enthält
json_dir="./json/*.json"
current_date=$(date +"%Y-%m-%d")
for json_file in $json_dir; do
if [[ -f "$json_file" ]]; then
current_json_date=$(jq -r '.date_created' "$json_file")
if [[ "$current_json_date" != "$current_date" ]]; then
echo "Updating $json_file with date $current_date"
jq --arg date "$current_date" '.date_created = $date' "$json_file" > temp.json && mv temp.json "$json_file"
git add "$json_file"
git commit -m "Update date_created to $current_date in $json_file"
else
echo "Date in $json_file is already up to date."
fi
fi
done
git push origin HEAD

58
.github/workflows/update_json_date.yml vendored Normal file
View File

@ -0,0 +1,58 @@
name: Update JSON Date on PR
on:
pull_request:
branches:
- main
types:
- opened
- synchronize
- reopened
jobs:
update-json-date:
runs-on: ubuntu-latest
steps:
- name: Checkout PR Branch
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- name: Update Date in JSON-Files
run: |
BASE_BRANCH=${{ github.event.pull_request.base.ref }}
HEAD_BRANCH=${{ github.event.pull_request.head.ref }}
git fetch origin $BASE_BRANCH
CHANGED_FILES=$(git diff --name-only origin/$BASE_BRANCH HEAD)
echo "Changed files: $CHANGED_FILES"
for FILE in $CHANGED_FILES; do
if [[ "$FILE" =~ /(.*)\.sh ]]; then
echo ${BASE_REAMTCH[1]}
NAME="$(echo "${BASH_REMATCH[1]}" | sed 's/-install//')"
elif [[ "$FILE" =~ /(.*)\.json ]]; then
NAME="${BASH_REMATCH[1]}"
else
echo "no Match on $FILE"
continue
fi
JSON_FILE="json/${NAME}.json"
if [[ -f "$JSON_FILE" ]]; then
echo "Updating date_created in $JSON_FILE"
jq --arg date "$(date +%Y-%m-%d)" '.date_created = $date' "$JSON_FILE" > tmp.json && mv tmp.json "$JSON_FILE"
else
echo "JSON file $JSON_FILE not found"
fi
done
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git diff --exit-code || git commit -am "Updating Dates in affected JSON files."
git push

View File

@ -16,12 +16,37 @@ All LXC instances created using this repository come pre-installed with Midnight
> [!IMPORTANT]
Do not break established syntax in this file, as it is automatically updated by a Github Workflow
## 2025-01-14
## 2025-01-16
### Changed
### ✨ New Scripts
- New script: phpIPAM [@bvdberg01](https://github.com/bvdberg01) ([#1503](https://github.com/community-scripts/ProxmoxVE/pull/1503))
## 2025-01-15
### Changed
### 🚀 Updated Scripts
- Fix: Add FFMPEG for OpenWebUI [@MickLesk](https://github.com/MickLesk) ([#1497](https://github.com/community-scripts/ProxmoxVE/pull/1497))
### 🧰 Maintenance
- [core] build.func&install.func: Fix ssh keynot added error [@dsiebel](https://github.com/dsiebel) ([#1502](https://github.com/community-scripts/ProxmoxVE/pull/1502))
## 2025-01-14
### Changed
### 💥 Breaking Changes
- Update tianji-install.sh: Add OPENAI_API_KEY to .env [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1480](https://github.com/community-scripts/ProxmoxVE/pull/1480))
### ✨ New Scripts
- New Script: Wordpress [@MickLesk](https://github.com/MickLesk) ([#1485](https://github.com/community-scripts/ProxmoxVE/pull/1485))
- New Script: Opengist [@jd-apprentice](https://github.com/jd-apprentice) ([#1429](https://github.com/community-scripts/ProxmoxVE/pull/1429))
### 🚀 Updated Scripts
@ -35,6 +60,7 @@ Do not break established syntax in this file, as it is automatically updated by
### 🧰 Maintenance
- Hotfix build.func: Error when tags are empty [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1492](https://github.com/community-scripts/ProxmoxVE/pull/1492))
- [core] Update build.func: Fix bug with advanced tags [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1473](https://github.com/community-scripts/ProxmoxVE/pull/1473))
## 2025-01-13

72
ct/phpipam.sh Normal file
View File

@ -0,0 +1,72 @@
#!/usr/bin/env bash
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: bvdberg01
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://phpipam.net/
# App Default Values
APP="phpIPAM"
var_tags="network"
var_cpu="1"
var_ram="512"
var_disk="4"
var_os="debian"
var_version="12"
var_unprivileged="1"
# App Output & Base Settings
header_info "$APP"
base_settings
# Core
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/phpipam ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -s https://api.github.com/repos/phpipam/phpipam/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping Service"
systemctl stop apache2
msg_ok "Stopped Service"
msg_info "Updating ${APP} to v${RELEASE}"
cd /opt
mv /opt/phpipam/ /opt/phpipam-backup
wget -q "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip"
unzip -q "phpipam-v${RELEASE}.zip"
cp /opt/phpipam-backup/config.php /opt/phpipam
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to v${RELEASE}"
msg_info "Starting Service"
systemctl start apache2
msg_ok "Started Service"
msg_info "Cleaning up"
rm -r "/opt/phpipam-v${RELEASE}.zip"
rm -r /opt/phpipam-backup
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"

45
ct/wordpress.sh Normal file
View File

@ -0,0 +1,45 @@
#!/usr/bin/env bash
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 communtiy-scripts ORG
# Author: MickLesk (Canbiz)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://wordpress.org/
## App Default Values
APP="Wordpress"
var_tags="blog;cms"
var_disk="5"
var_cpu="2"
var_ram="2048"
var_os="debian"
var_version="12"
# App Output & Base Settings
header_info "$APP"
base_settings
# Core
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /var/www/html/wordpress ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_error "Wordpress should be updated via the user interface."
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN} ${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/${CL}"

View File

@ -15,11 +15,13 @@ network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y curl
$STD apt-get install -y sudo
$STD apt-get install -y mc
$STD apt-get install -y gpg
$STD apt-get install -y git
$STD apt-get install -y \
curl \
sudo \
mc \
gpg \
git \
ffmpeg
msg_ok "Installed Dependencies"
msg_info "Installing Python3 Dependencies"

View File

@ -0,0 +1,86 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: bvdberg01
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
source /dev/stdin <<< "$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y \
curl \
sudo \
mc \
mariadb-server \
apache2 \
libapache2-mod-php \
php8.2 php8.2-{fpm,curl,cli,mysql,gd,intl,imap,apcu,pspell,tidy,xmlrpc,mbstring,gmp,xml,ldap,common,snmp} \
php-pear
msg_ok "Installed Dependencies"
msg_info "Setting up MariaDB"
DB_NAME=phpipam
DB_USER=phpipam
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
$STD mysql -u root -e "CREATE DATABASE $DB_NAME;"
$STD mysql -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED WITH mysql_native_password AS PASSWORD('$DB_PASS');"
$STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
{
echo "phpIPAM-Credentials"
echo "phpIPAM Database User: $DB_USER"
echo "phpIPAM Database Password: $DB_PASS"
echo "phpIPAM Database Name: $DB_NAME"
} >> ~/phpipam.creds
msg_ok "Set up MariaDB"
msg_info "Installing phpIPAM"
RELEASE=$(curl -s https://api.github.com/repos/phpipam/phpipam/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
cd /opt
wget -q "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip"
unzip -q "phpipam-v${RELEASE}.zip"
mysql -u root "${DB_NAME}" < /opt/phpipam/db/SCHEMA.sql
cp /opt/phpipam/config.dist.php /opt/phpipam/config.php
sed -i -e "s/\(\$disable_installer = \).*/\1true;/" \
-e "s/\(\$db\['user'\] = \).*/\1'$DB_USER';/" \
-e "s/\(\$db\['pass'\] = \).*/\1'$DB_PASS';/" \
-e "s/\(\$db\['name'\] = \).*/\1'$DB_NAME';/" \
/opt/phpipam/config.php
sed -i '/max_execution_time/s/= .*/= 600/' /etc/php/8.2/apache2/php.ini
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
msg_ok "Installed phpIPAM"
msg_info "Creating Service"
cat <<EOF >/etc/apache2/sites-available/phpipam.conf
<VirtualHost *:80>
ServerName phpipam
DocumentRoot /opt/phpipam
<Directory /opt/phpipam>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/phpipam_error.log
CustomLog /var/log/apache2/phpipam_access.log combined
</VirtualHost>
EOF
$STD a2ensite phpipam
$STD a2enmod rewrite
$STD a2dissite 000-default.conf
$STD systemctl reload apache2
msg_ok "Created Service"
motd_ssh
customize
msg_info "Cleaning up"
rm -rf "/opt/phpipam-v${RELEASE}.zip"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@ -0,0 +1,85 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 communtiy-scripts ORG
# Author: MickLesk (Canbiz)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://wordpress.org/
source /dev/stdin <<< "$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies (Patience)"
$STD apt-get install -y \
curl \
unzip \
sudo \
mc \
apache2 \
php8.2-{bcmath,common,cli,curl,fpm,gd,snmp,imap,mbstring,mysql,xml,zip} \
libapache2-mod-php \
mariadb-server
msg_ok "Installed Dependencies"
msg_info "Setting up Database"
DB_NAME=wordpress_db
DB_USER=wordpress
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
$STD mysql -u root -e "CREATE DATABASE $DB_NAME;"
$STD mysql -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
$STD mysql -u root -e "GRANT ALL PRIVILEGES ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
{
echo "WordPress Credentials"
echo "Database User: $DB_USER"
echo "Database Password: $DB_PASS"
echo "Database Name: $DB_NAME"
} >> ~/wordpress.creds
msg_ok "Set up Database"
msg_info "Installing Wordpress (Patience)"
cd /var/www/html
wget -q https://wordpress.org/latest.zip
unzip -q latest.zip
chown -R www-data:www-data wordpress/
cd /var/www/html/wordpress
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
mv wp-config-sample.php wp-config.php
sed -i -e "s|^define( 'DB_NAME', '.*' );|define( 'DB_NAME', '$DB_NAME' );|" \
-e "s|^define( 'DB_USER', '.*' );|define( 'DB_USER', '$DB_USER' );|" \
-e "s|^define( 'DB_PASSWORD', '.*' );|define( 'DB_PASSWORD', '$DB_PASS' );|" \
/var/www/html/wordpress/wp-config.php
msg_ok "Installed Wordpress"
msg_info "Setup Services"
cat <<EOF > /etc/apache2/sites-available/wordpress.conf
<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /var/www/html/wordpress
<Directory /var/www/html/wordpress>
AllowOverride All
</Directory>
ErrorLog \${APACHE_LOG_DIR}/error.log
CustomLog \${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
EOF
$STD a2ensite wordpress.conf
$STD a2dissite 000-default.conf
systemctl reload apache2
msg_ok "Created Services"
motd_ssh
customize
msg_info "Cleaning up"
rm -rf /var/www/html/latest.zip
$STD apt-get autoremove
$STD apt-get autoclean
msg_ok "Cleaned"

View File

@ -4,7 +4,7 @@
"categories": [
3
],
"date_created": "2025-11-01",
"date_created": "2025-01-14",
"type": "ct",
"updateable": false,
"privileged": false,

34
json/phpipam.json Normal file
View File

@ -0,0 +1,34 @@
{
"name": "phpIPAM",
"slug": "phpipam",
"categories": [
11
],
"date_created": "2025-01-15",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 80,
"documentation": "https://phpipam.net/documents/all-documents/",
"website": "https://phpipam.net/",
"logo": "https://phpipam.net/css/images/phpipam_logo_small@2x.png",
"description": "phpipam is an open-source web IP address management application (IPAM). Its goal is to provide light, modern and useful IP address management.",
"install_methods": [
{
"type": "default",
"script": "ct/phpipam.sh",
"resources": {
"cpu": 1,
"ram": 1024,
"hdd": 4,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": "Admin",
"password": "ipamadmin"
},
"notes": []
}

34
json/wordpress.json Normal file
View File

@ -0,0 +1,34 @@
{
"name": "Wordpress",
"slug": "wordpress",
"categories": [
14
],
"date_created": "2025-01-14",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 80,
"documentation": "https://wordpress.org/documentation/",
"website": "https://wordpress.org/",
"logo": "https://s.w.org/style/images/about/WordPress-logotype-simplified.png",
"description": "WordPress is the simplest, most popular way to create your own website or blog. In fact, WordPress powers over 43.6% of all the websites on the Internet. Yes more than one in four websites that you visit are likely powered by WordPress.\n\nOn a slightly more technical level, WordPress is an open-source content management system licensed under GPLv2, which means that anyone can use or modify the WordPress software for free.",
"install_methods": [
{
"type": "default",
"script": "ct/wordpress.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 5,
"os": "Debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

@ -1,4 +1,4 @@
### Generated on 01-14-2025
### Generated on 01-16-2025
##################################################
### 2fauth.sh
@ -1357,6 +1357,15 @@ APP=PhotoPrism
/_/ /_/ /_/\____/\__/\____/_/ /_/ /_/____/_/ /_/ /_/
### phpipam.sh
APP=phpIPAM
__ ________ ___ __ ___
____ / /_ ____ / _/ __ \/ | / |/ /
/ __ \/ __ \/ __ \ / // /_/ / /| | / /|_/ /
/ /_/ / / / / /_/ // // ____/ ___ |/ / / /
/ .___/_/ /_/ .___/___/_/ /_/ |_/_/ /_/
/_/ /_/
### pialert.sh
APP=PiAlert
____ _ ___ __ __
@ -1966,6 +1975,15 @@ APP=Wireguard
|__/|__/_/_/ \___/\__, /\__,_/\__,_/_/ \__,_/
/____/
### wordpress.sh
APP=Wordpress
_ __ __
| | / /___ _________/ /___ ________ __________
| | /| / / __ \/ ___/ __ / __ \/ ___/ _ \/ ___/ ___/
| |/ |/ / /_/ / / / /_/ / /_/ / / / __(__ |__ )
|__/|__/\____/_/ \__,_/ .___/_/ \___/____/____/
/_/
### yunohost.sh
APP=YunoHost
__ __ __ __ __

View File

@ -636,7 +636,7 @@ advanced_settings() {
TAGS="${ADV_TAGS}" # ADV_TAGS already contains "community-script"
fi
else
TAGS=""
TAGS="community-script;"
fi
echo -e "${NETWORK}${BOLD}${DGN}Tags: ${BGN}$TAGS${CL}"
else
@ -827,6 +827,7 @@ build_container() {
export PASSWORD="$PW"
export VERBOSE="$VERB"
export SSH_ROOT="${SSH}"
export SSH_AUTHORIZED_KEY
export CTID="$CT_ID"
export CTTYPE="$CT_TYPE"
export PCT_OSTYPE="$var_os"

View File

@ -255,4 +255,11 @@ EOF
fi
echo "bash -c \"\$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/ct/${app}.sh)\"" >/usr/bin/update
chmod +x /usr/bin/update
if [[ -n "${SSH_AUTHORIZED_KEY}" ]]; then
mkdir -p /root/.ssh
echo "${SSH_AUTHORIZED_KEY}" > /root/.ssh/authorized_keys
chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys
fi
}