Compare commits

..

34 Commits

Author SHA1 Message Date
Michel Roegl-Brunner
f5b960f30c
Update apt-cacher-ng.sh: Typo 2025-01-17 13:26:21 +01:00
community-scripts-pr-app[bot]
ed9c083dda
Update CHANGELOG.md (#1541)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-17 10:35:12 +01:00
CanbiZ
63b5024bf2
improve & shorten README 2025-01-17 10:10:11 +01:00
CanbiZ
1049558407
Update pull_request_template.md 2025-01-17 09:49:16 +01:00
CanbiZ
b93b1021a3
Update bug_report.yml 2025-01-17 09:46:56 +01:00
CanbiZ
7bb0cc32d2
Update bug_report.yml 2025-01-17 09:46:37 +01:00
community-scripts-pr-app[bot]
779721cea5
Update CHANGELOG.md (#1538)
Some checks failed
Auto Update .app-headers / update-app-headers (push) Waiting to run
Shellcheck / Shellcheck (push) Waiting to run
Create Changelog Pull Request / update-changelog-pull-request (push) Waiting to run
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-16 18:35:15 +01:00
Pedro Vieira
22b7155203
Update jellyseerr-install.sh (#1535) 2025-01-16 18:33:43 +01:00
community-scripts-pr-app[bot]
1bb911e531
Update CHANGELOG.md (#1527)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-16 16:09:06 +01:00
github-actions[bot]
023c3fc52d
Update .app-headers file (#1534)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-16 16:08:38 +01:00
Kristian Skov
258b1bd9fd
New script: Dotnet ASP.NET Web Server (#1501)
* Added files

* Update dotnetaspwebapi.json

* Updated build.func reference back to the original repos one

* Update dotnetaspwebapi.json for ubuntu 24.04

* Update dotnetaspwebapi.sh for ubuntu 24.04

* Update dotnetaspwebapi-install.sh for ubuntu 24.04

* Update install/dotnetaspwebapi-install.sh

Co-authored-by: Michel Roegl-Brunner <73236783+michelroegl-brunner@users.noreply.github.com>

* Updated for review

* Fixed FTP authentication

* Update dotnetaspwebapi-install.sh

Changed the service name to a static one

---------

Co-authored-by: Michel Roegl-Brunner <73236783+michelroegl-brunner@users.noreply.github.com>
2025-01-16 16:06:22 +01:00
CanbiZ
6d4eb9c3ee
Update update_json_date.yml 2025-01-16 16:04:54 +01:00
CanbiZ
15faa76b69
Update update_json_date.yml 2025-01-16 16:02:07 +01:00
CanbiZ
393f6d74c9
Update update_json_date.yml 2025-01-16 15:58:37 +01:00
CanbiZ
f51762420a
Update page.tsx 2025-01-16 15:13:39 +01:00
CanbiZ
f8c10ca80b
Update page.tsx 2025-01-16 15:09:13 +01:00
CanbiZ
3fca76dbbc
Mainpage: Fix "Scripts by TTeck": Typo & Mobile View 2025-01-16 15:05:48 +01:00
CanbiZ
b57689ec50
Mainpage: Fix "Scripts by TTeck": Typo & Mobile View (#1533) 2025-01-16 15:01:22 +01:00
CanbiZ
1f8f593116
add reactmode 2025-01-16 14:51:23 +01:00
CanbiZ
330315c615
remove comment jsx 2025-01-16 14:48:38 +01:00
CanbiZ
504d47d246
add react jsx 2025-01-16 14:48:17 +01:00
CanbiZ
ab206530e0
fix navbar issue in mobile view
Some checks are pending
Auto Update .app-headers / update-app-headers (push) Waiting to run
Shellcheck / Shellcheck (push) Waiting to run
Create Changelog Pull Request / update-changelog-pull-request (push) Waiting to run
Frontend CI/CD / build (push) Waiting to run
Frontend CI/CD / deploy (push) Blocked by required conditions
2025-01-16 14:45:54 +01:00
CanbiZ
f5b78d5dcc
fix navbar issue in mobile view 2025-01-16 14:43:53 +01:00
CanbiZ
3f9863ebf9
Add Mobile check for empty icon-url on website (#1532) 2025-01-16 14:36:46 +01:00
CanbiZ
786e8963b9
Update update_json_date.yml 2025-01-16 14:16:09 +01:00
CanbiZ
6cc4244f70
Update update_json_date.yml 2025-01-16 13:58:11 +01:00
CanbiZ
f5a260a399
Update update_json_date.yml 2025-01-16 13:55:54 +01:00
CanbiZ
f1f8f78420
Update update_json_date.yml 2025-01-16 13:55:22 +01:00
CanbiZ
6c42b5c21a
Update update_json_date.yml 2025-01-16 13:53:28 +01:00
CanbiZ
24d24421d1
Update update_json_date.yml 2025-01-16 13:52:03 +01:00
CanbiZ
9e4c627323
Update update_json_date.yml 2025-01-16 13:49:56 +01:00
Michel Roegl-Brunner
2551bf6f9f
[Workflow]Update autolabeler-config.json (#1525) 2025-01-16 13:44:24 +01:00
Michel Roegl-Brunner
8533380813
[core]Update update_json_date.yml (#1526)
* [core]Update update_json_date.yml

* Update update_json_date.yml
2025-01-16 13:44:04 +01:00
community-scripts-pr-app[bot]
f65abd9ac8
Update CHANGELOG.md (#1524)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-16 13:34:47 +01:00
13 changed files with 378 additions and 170 deletions

View File

@ -8,7 +8,7 @@ body:
# 🐞 **Script Issue Report**
Thank you for taking the time to report an issue! Please provide as much detail as possible to help us address the problem efficiently.
## ⚠️ **IMPORTANT**
## ⚠️ **IMPORTANT - READ FIRST**
- 🔍 **Search first:** Before submitting, check if the issue has already been reported or resolved in [closed issues](https://github.com/community-scripts/ProxmoxVE/issues?q=is%3Aissue+is%3Aclosed). If found, comment on that issue instead of creating a new one.
Alternatively, check the **[Discussions](https://github.com/community-scripts/ProxmoxVE/discussions)** under the *"Announcement"* or *"Guide"* categories for relevant information.
- 🛠️ **Supported environments only:** Ensure you are using a default Linux distribution. Custom setups may not be supported.

View File

@ -1,22 +1,20 @@
> **🛠️ Note:**
> We are meticulous about merging code into the main branch, so please understand that pull requests not meeting the project's standards may be rejected. It's never personal!
> 🎮 **Note for game-related scripts:** These have a lower likelihood of being merged.
---
## ✍️ Description
Provide a summary of the changes made and/or reference the issue being addressed.
- - -
**_Please remove unneeded lines!_**
- Related Issue: # (issue number, if applicable)
- Related PR: # (if applicable)
- Related Discussion: []()(if applicable)
- Related Issue: #
- Related PR: #
- Related Discussion: #
- - -
## ✅ Prerequisites
The following steps must be completed for the pull request to be considered:
- [] Self-review performed (I have reviewed my code to ensure it follows established patterns and conventions.)
- [] Testing performed (I have thoroughly tested my changes and verified expected functionality.)
## 🛠️ Type of Change
Please check the relevant options:
- [] Bug fix (non-breaking change that resolves an issue)
@ -25,15 +23,6 @@ Please check the relevant options:
- [] New script (a fully functional and thoroughly tested script or set of scripts)
---
## ✅ Prerequisites
The following steps must be completed for the pull request to be considered:
- [ ] Self-review performed (I have reviewed my code to ensure it follows established patterns and conventions.)
- [ ] Testing performed (I have thoroughly tested my changes and verified expected functionality.)
- [ ] Documentation updated (I have updated any relevant documentation)
---
## 📋 Additional Information (optional)
Provide any extra context or screenshots about the feature or fix here.

View File

@ -1,58 +1,48 @@
name: Update JSON Date on PR
name: Update JSON Date
on:
pull_request:
branches:
- main
types:
- opened
- synchronize
- reopened
types: [opened, synchronize, reopened]
jobs:
update-json-date:
list-files:
runs-on: ubuntu-latest
steps:
- name: Checkout PR Branch
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- name: Update Date in JSON-Files
ref: ${{ github.event.pull_request.head.ref }}
- name: Fetch PR changes
run: |
git remote add fork https://github.com/${{ github.event.pull_request.head.repo.full_name }}.git
git fetch fork ${{ github.event.pull_request.head.ref }}:pullreq
git checkout pullreq
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: Update JSON
id: changed-files
run: |
FILES=$(gh api repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/files --jq '.[].filename' | tr '\n' ' ')
echo "changed_files=${FILES}"
for FILE in $FILES; do
if [[ "$FILE" =~ /(.*)\.json ]]; then
NAME="${BASH_REMATCH[1]}"
else
echo "no Match on $FILE"
echo "no new JSON in ${FILES}"
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"
echo "JSON file $FILES not found"
fi
done
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git diff --exit-code || git commit -am "Updating Dates in affected JSON files."
git push
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@ -16,14 +16,33 @@ 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-17
### Changed
## 2025-01-16
### Changed
### 💥 Breaking Changes
- Update jellyseerr-install.sh to use Node 22 as required by latest Jellyseerr version [@pedrovieira](https://github.com/pedrovieira) ([#1535](https://github.com/community-scripts/ProxmoxVE/pull/1535))
### ✨ New Scripts
- New script: Dotnet ASP.NET Web Server [@kris701](https://github.com/kris701) ([#1501](https://github.com/community-scripts/ProxmoxVE/pull/1501))
- New script: phpIPAM [@bvdberg01](https://github.com/bvdberg01) ([#1503](https://github.com/community-scripts/ProxmoxVE/pull/1503))
### 🌐 Website
- Add Mobile check for empty icon-url on website [@MickLesk](https://github.com/MickLesk) ([#1532](https://github.com/community-scripts/ProxmoxVE/pull/1532))
### 🧰 Maintenance
- [Workflow]Update autolabeler-config.json [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1525](https://github.com/community-scripts/ProxmoxVE/pull/1525))
- [core]Update update_json_date.yml [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1526](https://github.com/community-scripts/ProxmoxVE/pull/1526))
- [core] Recreate Update JSON Workflow [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1523](https://github.com/community-scripts/ProxmoxVE/pull/1523))
## 2025-01-15
### Changed

134
README.md
View File

@ -7,106 +7,98 @@
</div>
<div style="border: 2px solid #d1d5db; padding: 20px; border-radius: 8px; background-color: #f9fafb;">
<h2 align="center">Proxmox VE Helper-Scripts: A Community Legacy</h2>
<p>Dear Community,</p>
<p>In agreement with <a href="https://github.com/tteck">tteck</a> and <a href="https://github.com/community-scripts">Community-Scripts</a>, this project has now transitioned into a community-driven effort. We aim to continue his work, building on the foundation he laid to support Proxmox users worldwide. Tteck sadly <a href="https://github.com/community-scripts/ProxmoxVE/discussions/237">passed away in early November 2024</a>. This project will be a memorial for his incredible contribution to the community.</p>
<h2 align="center">Proxmox VE Helper-Scripts</h2>
<p align="center">A Community Legacy in Memory of @tteck</p>
<p align="center">
<a href="https://helper-scripts.com">
<img src="https://img.shields.io/badge/Website-4c9b3f?style=for-the-badge&logo=github&logoColor=white" alt="Website" />
</a>
<a href="https://discord.gg/UHrpNWGwkH">
<img src="https://img.shields.io/badge/Discord-7289da?style=for-the-badge&logo=discord&logoColor=white" alt="Discord" />
</a>
<a href="https://ko-fi.com/community_scripts">
<img src="https://img.shields.io/badge/Donate-FF5F5F?style=for-the-badge&logo=ko-fi&logoColor=white" alt="Donate" />
</a>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/.github/CONTRIBUTING.md">
<img src="https://img.shields.io/badge/Contribute-ff4785?style=for-the-badge&logo=git&logoColor=white" alt="Contribute" />
</a>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/USER_SUBMITTED_GUIDES.md">
<img src="https://img.shields.io/badge/Guides-0077b5?style=for-the-badge&logo=read-the-docs&logoColor=white" alt="Guides" />
</a>
<a href="https://discord.gg/UHrpNWGwkH">
<img src="https://img.shields.io/badge/Discord-7289da?style=for-the-badge&logo=discord&logoColor=white" alt="Discord" />
</a>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/CHANGELOG.md">
<img src="https://img.shields.io/badge/Changelog-6c5ce7?style=for-the-badge&logo=git&logoColor=white" alt="Changelog" />
</a>
</p>
<hr>
## 🚀&nbsp; Introduction
**Proxmox VE Helper-Scripts** is a community-driven initiative that simplifies the setup of Proxmox Virtual Environment (VE). Originally created by [tteck](https://github.com/tteck), these scripts automate and streamline the process of creating and configuring Linux containers (LXC) and virtual machines (VMs) on Proxmox VE.
</div>
---
## 📦&nbsp; Features
## 🚀 Project Overview
- **Interactive Setup**: Select simple or advanced options for your VM or LXC container configurations.
- **Customizable Configuration**: Advanced setup allows you to fine-tune your environment.
- **Ease of Use**: Scripts automatically validate inputs to generate the final configuration.
- **Proxmox Integration**: Seamlessly integrates with Proxmox VE to provide a user-friendly experience.
- **Community-Driven**: This project is actively maintained and improved by the community.
<hr>
## 🚀&nbsp; Installation
To install the Proxmox Helper Scripts, simply follow these steps:
1. Open the [Website](https://helper-scripts.com/)
2. Search for the desired script, e.g. **"Home Assistant OS VM"**.
3. In the **"How To Install"** section, copy the provided **Bash command**.
4. Open the Proxmox shell on your **main node**.
5. Paste the command into the console, hit enter, and you are away! 🚀
For detailed instructions, check out our [official guides](https://github.com/community-scripts/ProxmoxVE/blob/main/USER_SUBMITTED_GUIDES.md).
**Proxmox VE Helper-Scripts** is a collection of tools to simplify the setup and management of Proxmox Virtual Environment (VE). Originally created by [tteck](https://github.com/tteck), these scripts are now continued by the community. Our goal is to preserve and expand upon tteck's work, providing an ongoing resource for Proxmox users worldwide.
---
## ❤️&nbsp; Community and Contributions
## 📦 Features
The Proxmox Helper Scripts project is community-driven, and we highly appreciate any contributions — whether it's through reporting bugs, suggesting features, improving documentation, or spreading the word. We are committed to maintaining transparency and sustainability in this open-source effort.
- **Interactive Setup**: Choose between simple and advanced options for configuring VMs and LXC containers.
- **Customizable Configurations**: Advanced setup for fine-tuning your environment.
- **Seamless Integration**: Works seamlessly with Proxmox VE for a smooth experience.
- **Community-driven**: Actively maintained and improved by the Proxmox community.
### 💖&nbsp; Donate to Support the Project
---
## ✅ Requirements
We offer two donation options to help maintain and grow this project:
- **Ko-Fi for tteck**: [Donate to tteck's wife](https://ko-fi.com/proxmoxhelperscripts) - All donations will go directly to Angie, wife of the founder of this project [who passed away in early November 2024](https://github.com/community-scripts/ProxmoxVE/discussions/237).
- **Ko-Fi for Community Edition**: [Donate to this project](https://ko-fi.com/community_scripts) - All funds will go towards script maintenance infrastructure and server costs. **Our most immediate need is funding testing infrastructure**. Your contributions help keep the project running. To honor tteck's legacy this project will also raise money for charity (cancer research, hospice care). Of the money donated to this project, 30% will be donated to charity. Income, expenditure and charitable donations will be disclosed annually in a transparent manner.
<hr>
## 💬&nbsp; Get Help
Have a question or ran into an issue? Join the conversation and get help from fellow community members:
- **Discord**: Join our [Proxmox Helper Scripts Discord server](https://discord.gg/UHrpNWGwkH) to chat with other users and get support.
- **GitHub Discussions**: [Ask questions or report issues](https://github.com/community-scripts/ProxmoxVE/discussions).
<hr>
## 🤝&nbsp; Found a bug or missing feature?
If youve encountered an issue or identified an area for improvement, please file a new issue on our [GitHub issues page](https://github.com/community-scripts/ProxmoxVE/issues). If youve already found a solution or improvement, feel free to submit a pull request! Wed love to review and merge your contributions.
<hr>
## ✅&nbsp; Requirements
To use the Proxmox VE Helper-Scripts, your system should meet the following requirements:
Ensure your system meets the following prerequisites:
- **Proxmox VE version**: 8.x or higher
- **Linux**: Compatible with most distributions
- **Dependencies**: Ensure that your system has bash and curl installed.
<hr>
## 📜&nbsp; License
This project is licensed under the terms of the [MIT License](LICENSE).
- **Dependencies**: bash and curl should be installed.
---
## 📢&nbsp; Acknowledgments
## 🚀 Installation
To install the Proxmox Helper Scripts, follow these steps:
1. Visit the [Website](https://helper-scripts.com/).
2. Search for the desired script, e.g., **"Home Assistant OS VM"**.
3. Copy the provided **Bash command** from the **"How To Install"** section.
4. Open the Proxmox shell on your **main node** and paste the command.
5. Press enter to start the installation! 🚀
---
## ❤️ Community and Contributions
We appreciate any contributions to the project—whether it's bug reports, feature requests, documentation improvements, or spreading the word. Your involvement helps keep the project alive and sustainable.
## 💖 Donate to Support the Project
- **Ko-Fi for Community Edition**: [Donate to support this project](https://ko-fi.com/community_scripts) Donations go towards maintaining the project, testing infrastructure, and charity (cancer research, hospice care). 30% of the funds will be donated to charity.
---
## 💬 Get Help
Join our community for support:
- **Discord**: Join our [Proxmox Helper Scripts Discord server](https://discord.gg/UHrpNWGwkH) for real-time support.
- **GitHub Discussions**: [Ask questions or report issues](https://github.com/community-scripts/ProxmoxVE/discussions).
## 🤝 Report a Bug or Feature Request
If you encounter any issues or have suggestions for improvement, file a new issue on our [GitHub issues page](https://github.com/community-scripts/ProxmoxVE/issues). You can also submit pull requests with solutions or enhancements!
---
## 📜 License
This project is licensed under the [MIT License](LICENSE).
</br>
</br>
<p align="center">
<i style="font-size: smaller;"><b>Proxmox</b>® is a registered trademark of <a href="https://www.proxmox.com/en/about/company">Proxmox Server Solutions GmbH</a>.</i>
</p>
This community project is a memorial to the memory of [tteck](https://github.com/tteck). His foundational work created a thriving Proxmox community. Tteck worked on this project right until the end, even while in hospice. We are dedicated to keeping his vision alive and expanding upon it with the continued support of this vibrant community.
Proxmox® is a registered trademark of [Proxmox Server Solutions GmbH](https://www.proxmox.com/en/about/company).

View File

@ -46,4 +46,4 @@ 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}:3142/acng-report.html{CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3142/acng-report.html${CL}"

49
ct/dotnetaspwebapi.sh Normal file
View File

@ -0,0 +1,49 @@
#!/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: Kristian Skov
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-9.0&tabs=linux-ubuntu
# App Default Values
APP="Dotnet ASP Web API"
var_tags="web"
var_cpu="1"
var_ram="1024"
var_disk="8"
var_os="ubuntu"
var_version="24.04"
var_unprivileged="0"
# 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 ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating ${APP} LXC"
apt-get update &>/dev/null
apt-get -y upgrade &>/dev/null
msg_ok "Updated Successfully"
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 IP:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}${IP}:80${CL}"

View File

@ -1,9 +1,12 @@
import { OperatingSystem } from "@/lib/types";
import { MessagesSquare, Scroll } from "lucide-react";
import { FaDiscord, FaGithub } from "react-icons/fa";
import React from "react";
export const basePath = process.env.BASE_PATH;
const isMobile = typeof window !== "undefined" && window.innerWidth < 640;
export const navbarLinks = [
{
href: `https://github.com/community-scripts/${basePath}`,
@ -23,13 +26,15 @@ export const navbarLinks = [
icon: <Scroll className="h-4 w-4" />,
text: "Change Log",
},
{
!isMobile
? {
href: `https://github.com/community-scripts/${basePath}/discussions`,
event: "Discussions",
icon: <MessagesSquare className="h-4 w-4 hidden sm:block" />,
icon: <MessagesSquare className="h-4 w-4" />,
text: "Discussions",
},
];
}
: null,
].filter(Boolean) as { href: string; event: string; icon: React.ReactNode; text: string }[];
export const mostPopularScripts = [
"Proxmox VE Post Install",

View File

@ -10,7 +10,7 @@
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules": true,
"jsx": "preserve",
"jsx": "react-jsx",
"incremental": true,
"plugins": [
{
@ -27,7 +27,7 @@
"**/*.ts",
"**/*.tsx",
".next/types/**/*.ts",
"next.config.mjs",
"next.config.mjs"
],
"exclude": ["node_modules"]
}

View File

@ -0,0 +1,110 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Kristian Skov
# 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 update
$STD apt-get install -y \
ssh \
software-properties-common
$STD add-apt-repository -y ppa:dotnet/backports
$STD apt-get install -y \
dotnet-sdk-9.0 \
vsftpd \
nginx
msg_ok "Installed Dependencies"
msg_info "Configure Application"
var_project_name="default"
read -r -p "Type the assembly name of the project: " var_project_name
echo "Target assembly: '${var_project_name}'"
msg_ok "Application Configured"
msg_info "Setting up FTP Server"
useradd ftpuser
FTP_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
usermod --password $(echo ${FTP_PASS} | openssl passwd -1 -stdin) ftpuser
mkdir -p /var/www/html
usermod -d /var/www/html ftp
usermod -d /var/www/html ftpuser
chown ftpuser /var/www/html
sed -i "s|#write_enable=YES|write_enable=YES|g" /etc/vsftpd.conf
sed -i "s|#chroot_local_user=YES|chroot_local_user=NO|g" /etc/vsftpd.conf
systemctl restart -q vsftpd.service
{
echo "FTP-Credentials"
echo "Username: ftpuser"
echo "Password: $FTP_PASS"
} >> ~/ftp.creds
msg_ok "FTP server setup completed"
msg_info "Setting up Nginx Server"
rm -f /var/www/html/index.nginx-debian.html
sed "s/\$var_project_name/$var_project_name/g" >myfile <<'EOF' >/etc/nginx/sites-available/default
map $http_connection $connection_upgrade {
"~*Upgrade" $http_connection;
default keep-alive;
}
server {
listen 80;
server_name $var_project_name.com *.$var_project_name.com;
location / {
proxy_pass http://127.0.0.1:5000/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
EOF
systemctl reload nginx
msg_ok "Nginx Server Created"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/kestrel-aspnetapi.service
[Unit]
Description=.NET Web API App running on Linux
[Service]
WorkingDirectory=/var/www/html
ExecStart=/usr/bin/dotnet /var/www/html/$var_project_name.dll
Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=dotnet-${var_project_name}
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_NOLOGO=true
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now kestrel-aspnetapi.service
msg_ok "Created Service"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@ -24,7 +24,7 @@ msg_ok "Installed Dependencies"
msg_info "Setting up Node.js Repository"
mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
msg_ok "Set up Node.js Repository"
msg_info "Installing Node.js"

39
json/dotnetaspwebapi.json Normal file
View File

@ -0,0 +1,39 @@
{
"name":"Dotnet ASP Web API",
"slug":"dotnetaspwebapi",
"categories":[
0
],
"date_created":"2025-01-15",
"type":"ct",
"updateable":true,
"privileged":true,
"interface_port":80,
"documentation":"https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-9.0&tabs=linux-ubuntu",
"website":"https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-9.0&tabs=linux-ubuntu",
"logo":"https://upload.wikimedia.org/wikipedia/commons/thumb/7/7d/Microsoft_.NET_logo.svg/456px-Microsoft_.NET_logo.svg.png",
"description":"Automatically setup a ASP.NET server up, as well as a FTP server so you can publish to this container from Visual Studio.",
"install_methods":[
{
"type":"default",
"script":"ct/dotnetaspwebapi.sh",
"resources":{
"cpu":1,
"ram":1024,
"hdd":8,
"os":"Ubuntu",
"version":"24.04"
}
}
],
"default_credentials":{
"username":null,
"password":null
},
"notes":[
{
"text":"FTP server credentials: `cat ~/ftp.creds`",
"type":"info"
}
]
}

View File

@ -421,6 +421,21 @@ APP=Dockge
/_____/\____/\___/_/|_|\__, /\___/
/____/
### dotnetaspwebapi.sh
APP=Dotnet ASP Web API
____ __ __ ___ _____ ____ _ __ __
/ __ \____ / /_____ ___ / /_ / | / ___// __ \ | | / /__ / /_
/ / / / __ \/ __/ __ \/ _ \/ __/ / /| | \__ \/ /_/ / | | /| / / _ \/ __ \
/ /_/ / /_/ / /_/ / / / __/ /_ / ___ |___/ / ____/ | |/ |/ / __/ /_/ /
/_____/\____/\__/_/ /_/\___/\__/ /_/ |_/____/_/ |__/|__/\___/_.___/
___ ____ ____
/ | / __ \/ _/
/ /| | / /_/ // /
/ ___ |/ ____// /
/_/ |_/_/ /___/
### emby.sh
APP=Emby
______ __