Compare commits
8 Commits
1463667306
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 7d8dbbfd61 | |||
| dfb5fa2cd8 | |||
| dc1acafac4 | |||
| 45d79b8084 | |||
| 040e7783a8 | |||
| ce270e5168 | |||
| 471395fba7 | |||
| ae3688b166 |
8
.env
8
.env
@@ -1,8 +0,0 @@
|
|||||||
NETWORKNAME=
|
|
||||||
MYSQL_ROOT_PASSWORD=
|
|
||||||
MYSQL_USER=
|
|
||||||
MYSQL_PASSWORD=
|
|
||||||
MYSQL_DATABASE=
|
|
||||||
MYSQL_USER=
|
|
||||||
MYSQL_PASSWORD=
|
|
||||||
MYSQL_DATABASE=
|
|
||||||
50
bin/generate_env.sh
Normal file
50
bin/generate_env.sh
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
ENV_FILE=".env"
|
||||||
|
|
||||||
|
# Function to generate a random alphanumeric password of a given length
|
||||||
|
generate_password() {
|
||||||
|
tr -dc 'a-zA-Z0-9' < /dev/urandom | head -c "${1:-12}"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Function to prompt for a value if not set as a parameter
|
||||||
|
prompt_for_value() {
|
||||||
|
read -p "$1: " value
|
||||||
|
echo "$value"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Set $PROJECTNAME if not provided as a parameter
|
||||||
|
PROJECTNAME=${1:-$(prompt_for_value "Enter PROJECTNAME")}
|
||||||
|
|
||||||
|
cat <<EOF > $ENV_FILE
|
||||||
|
# Docker
|
||||||
|
NETWORKNAME=admin_web
|
||||||
|
|
||||||
|
# MySQL
|
||||||
|
MYSQL_ROOT_PASSWORD=$(generate_password)
|
||||||
|
MYSQL_USER=u_$(echo $PROJECTNAME | tr '[:upper:]' '[:lower:]')
|
||||||
|
MYSQL_PASSWORD=$(generate_password)
|
||||||
|
MYSQL_DATABASE=db_$(echo $PROJECTNAME | tr '[:upper:]' '[:lower:]')
|
||||||
|
|
||||||
|
# GITEA
|
||||||
|
GITEA_API_URL=REPLACEME
|
||||||
|
ACCESS_TOKEN=REPLACEME
|
||||||
|
|
||||||
|
# Joomla
|
||||||
|
EMAIL=noreply@$(echo $PROJECTNAME | tr '[:upper:]' '[:lower:]').com
|
||||||
|
JOOMLA_USER="$PROJECTNAME"
|
||||||
|
JOOMLA_USERNAME=admin
|
||||||
|
# Passwords must be 12 characters long (admin-password)
|
||||||
|
JOOMLA_PASSWORD=$(generate_password)
|
||||||
|
|
||||||
|
# SMTP
|
||||||
|
SMTP_USER=null
|
||||||
|
SMTP_PASS=null
|
||||||
|
SMTP_HOST='mailhog'
|
||||||
|
SMTP_SECURITY='None'
|
||||||
|
SMTP_PORT=1025
|
||||||
|
EOF
|
||||||
|
|
||||||
|
rm $0
|
||||||
|
|
||||||
|
echo "Generated $ENV_FILE with randomly generated passwords and customized PROJECTNAME."
|
||||||
@@ -1,14 +1,15 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
# This Bash script initializes a new Git repository, removes existing Git info, creates a README.md with the project name, and makes an initial commit.
|
||||||
|
|
||||||
PROJECTNAME=$(basename "$(pwd)")
|
PROJECTNAME=$(basename "$(pwd)")
|
||||||
|
|
||||||
# Remove existing Git repository information
|
rm -rf .git # Remove existing Git repository information
|
||||||
rm -rf .git
|
|
||||||
|
|
||||||
rm README.md
|
# New readme for Project
|
||||||
|
rm README.md
|
||||||
touch README.md
|
touch README.md
|
||||||
echo "# ${PROJECTNAME}" > README.md
|
echo "# ${PROJECTNAME}" > README.md
|
||||||
echo "" > README.md
|
echo "" >> README.md
|
||||||
echo "Created a fresh repo for your ${PROJECTNAME} project." >> README.md
|
echo "Created a fresh repo for your ${PROJECTNAME} project." >> README.md
|
||||||
|
|
||||||
# Initialize a new Git repository
|
# Initialize a new Git repository
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
# Creates a private Git repository on Gitea using its API, adds a remote origin to the local Git repository, and pushes existing changes to the master branch.
|
||||||
|
|
||||||
PROJECTNAME=$(basename "$(pwd)")
|
PROJECTNAME=$(basename "$(pwd)")
|
||||||
|
|
||||||
|
|||||||
@@ -1,24 +1,26 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Are you root?
|
# Are you root?
|
||||||
if [ "$EUID" -ne 0 ]; then
|
if [ "$EUID" -ne 0 ]; then
|
||||||
echo -e "\033[0;31mThis script must be run as root.\033[0m"
|
echo -e "\033[0;31mThis script must be run as root.\033[0m"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Template
|
echo "Astroid Framework (Template)"
|
||||||
# [GitHub](https://github.com/templaza/astroid-framework)
|
# [GitHub](https://github.com/templaza/astroid-framework)
|
||||||
docker-compose exec -u www-data joomla php cli/joomla.php extension:install --url=https://github.com/templaza/astroid-framework/releases/download/v2.6.5/astroid-package-v2.6.5.Framework-Template.zip
|
docker-compose exec -u www-data joomla php cli/joomla.php extension:install --url=https://github.com/templaza/astroid-framework/releases/download/v3.0.7/astroid-framework-3.0.7.zip
|
||||||
|
|
||||||
# Sitemap
|
echo "OSMap (Sitemap)"
|
||||||
# [GitHub](https://github.com/joomlashack/OSMap)
|
# [GitHub](https://github.com/joomlashack/OSMap)
|
||||||
docker-compose exec -u www-data joomla php cli/joomla.php extension:install --url=https://deploy.ostraining.com/client/download/free/latest-stable/com_osmap
|
docker-compose exec -u www-data joomla php cli/joomla.php extension:install --url=https://github.com/joomlashack/OSMap/releases/download/v5.0.15/com_osmap_free_5.0.15.zip
|
||||||
|
|
||||||
# Comments
|
echo "Akeeba Engage (Comments)"
|
||||||
# [Download page](https://www.akeeba.com/download/engage/3-2-5.html)
|
# [Download page](https://www.akeeba.com/download/engage/3-2-5.html)
|
||||||
# [Github](https://github.com/akeeba/engage)
|
# [Github](https://github.com/akeeba/engage)
|
||||||
docker-compose exec -u www-data joomla php cli/joomla.php extension:install --url=https://www.akeeba.com/download/engage/3-2-5/pkg-engage-3-2-5-zip.zip
|
docker-compose exec -u www-data joomla php cli/joomla.php extension:install --url=https://www.akeeba.com/download/engage/3-3-3/pkg-engage-3-3-3-zip.zip
|
||||||
|
|
||||||
# Contact Form
|
echo "Mavro Contact Form"
|
||||||
# [GitHub](https://github.com/mavrosxristoforos/rapid-contact)
|
# [GitHub](https://github.com/mavrosxristoforos/rapid-contact)
|
||||||
docker-compose exec -u www-data joomla php cli/joomla.php extension:install --url=https://github.com/mavrosxristoforos/rapid-contact/releases/download/1.4.27/mod_rapid_contact.zip
|
docker-compose exec -u www-data joomla php cli/joomla.php extension:install --url=https://github.com/mavrosxristoforos/rapid-contact/releases/download/1.4.37/mod_rapid_contact.zip
|
||||||
|
|
||||||
|
echo "END installing extensions"
|
||||||
@@ -84,5 +84,8 @@ rm -f html/README.txt
|
|||||||
rm -rf bin/inc_new_project
|
rm -rf bin/inc_new_project
|
||||||
rm -rf bin/joomla_new_project.sh
|
rm -rf bin/joomla_new_project.sh
|
||||||
rm -rf bin/joomla_install.sh
|
rm -rf bin/joomla_install.sh
|
||||||
|
rm -rf bin/install_extensions.sh
|
||||||
|
|
||||||
|
rm $0
|
||||||
|
|
||||||
echo "Now check the results and commit them to Git"
|
echo "Now check the results and commit them to Git"
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
# Runs the joomla cli through docker
|
||||||
|
|
||||||
PROJECTNAME=$(basename "$(pwd)")
|
PROJECTNAME=$(basename "$(pwd)")
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Function to generate a random password using passgen
|
|
||||||
generate_password() {
|
|
||||||
pwgen -cnsB1v 12
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get the name of the current directory (project name)
|
|
||||||
PROJECT_NAME=$(basename "$(pwd)")
|
|
||||||
MYSQL_USER="${PROJECT_NAME}_joomla_user"
|
|
||||||
MYSQL_DATABASE="${PROJECT_NAME}_joomla_db"
|
|
||||||
|
|
||||||
echo "Generated passwords:"
|
|
||||||
|
|
||||||
# Generate passwords for specific variables and print them to CLI
|
|
||||||
echo "MYSQL_ROOT_PASSWORD=$(generate_password)"
|
|
||||||
echo "MYSQL_USER=$MYSQL_USER"
|
|
||||||
echo "MYSQL_DATABASE=$MYSQL_DATABASE"
|
|
||||||
echo "MYSQL_PASSWORD=$(generate_password)"
|
|
||||||
echo "MYSQL_DATABASE=$MYSQL_DATABASE"
|
|
||||||
echo "JOOMLA_PASSWORD=$(generate_password)"
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
# Development Directory
|
|
||||||
|
|
||||||
The development directory in this repository is specifically intended for use within the staging environment of Joomla installations.
|
|
||||||
It serves as a mount point within the Joomla installation app for easy extension installation.
|
|
||||||
|
|
||||||
@@ -4,7 +4,7 @@ services:
|
|||||||
|
|
||||||
joomla:
|
joomla:
|
||||||
volumes:
|
volumes:
|
||||||
- ./development:/development
|
- ./data/development:/development
|
||||||
ports:
|
ports:
|
||||||
- "8000:80"
|
- "8000:80"
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
version: '3.8'
|
version: '3.8'
|
||||||
|
|
||||||
# For Staging
|
# For Staging
|
||||||
# docker-compose -f docker-compose.yml -f docker-compose.staging.yml --env-file .env.staging up -d
|
# docker-compose -f docker-compose.yml -f docker-compose.staging.yml up -d
|
||||||
#
|
#
|
||||||
# For Production
|
# For Production
|
||||||
# docker-compose up -d
|
# docker-compose up -d
|
||||||
|
|||||||
@@ -1,26 +0,0 @@
|
|||||||
# Docker
|
|
||||||
NETWORKNAME=admin_web
|
|
||||||
|
|
||||||
# MySQL
|
|
||||||
MYSQL_ROOT_PASSWORD=REPLACEME
|
|
||||||
MYSQL_USER=REPLACEME
|
|
||||||
MYSQL_PASSWORD=REPLACEME
|
|
||||||
MYSQL_DATABASE=REPLACEME
|
|
||||||
|
|
||||||
# GITEA
|
|
||||||
GITEA_API_URL=REPLACEME
|
|
||||||
ACCESS_TOKEN=REPLACEME
|
|
||||||
|
|
||||||
# Joomla
|
|
||||||
EMAIL=noreply@example.com
|
|
||||||
JOOMLA_USER="John Doe"
|
|
||||||
JOOMLA_USERNAME=admin
|
|
||||||
# Passwords must be 12 characters long (admin-password)
|
|
||||||
JOOMLA_PASSWORD=REPLACEME123
|
|
||||||
|
|
||||||
# SMTP
|
|
||||||
SMTP_USER=null
|
|
||||||
SMTP_PASS=null
|
|
||||||
SMTP_HOST='mailhog'
|
|
||||||
SMTP_SECURITY='None'
|
|
||||||
SMTP_PORT=1025
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>Placeholder</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h1>Placeholder</h1>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
Reference in New Issue
Block a user