jknapp
1d4d440a88
Some checks failed
Cloud Apache Container / Build-and-Push (push) Failing after 1m5s
Reviewed-on: #5 |
||
---|---|---|
.gitea/workflows | ||
configs | ||
pipeline | ||
scripts | ||
Dockerfile | ||
local-dev.sh | ||
README.md |
Cloud Apache Container
This is the base container for running PHP based applications. Select the PHP version environment variables. PHP Version Defaults to PHP 8.1
You mush have docker or compatable containerization software running.
You can pull this image locally by running:
docker pull public.ecr.aws/s1f6k4w4/cac:latest
You can then run a development version of the server by running the following commands: Note this is an example, you can modify the command(s) to fit your needs.
mkdir -p local-development/domain.tld
cd local-development/domain.tld
mkdir {web,db}
docker run -it -p 80:80 -p 443:443 -e PHPVER=81 -e environment=DEV --mount type=bind,source="$(pwd)"/web,target=/home/myuser/public_html --mount type=bind,source="$(pwd)"/db,target=/var/lib/mysql -e uid=30001 -e user=myuser -e domain=domain.tld -e serveralias=www.domain.tld --name local-dev public.ecr.aws/s1f6k4w4/cac:latest
This will start the processes needed to run sites locally.
The first time you start the container, it will take some time as it is installing all the required software to run the dev instance.
If you need to get into the container you can run:
docker exec -it local-dev /bin/bash
To install WordPress for your site
cat /var/lib/mysql/creds
su - myuser
cd ~/public_html
wp core download
You should be able to then go into your browser and go to https://localhost (accept the SSL warning if it appears) and follow the prompts to setup the site.
The database credentials are shown in the /var/lib/mysql/creds file, which we had cat in the commands above.
PHPVER
74 - PHP 7.4
80 - PHP 8.0
81 - PHP 8.1
82 - PHP 8.2
Environment Variables
Required Tags
uid - User ID for File Permissions
user - Username for File Permissions
domain - Primary Domain for configuration
Optional Tags
environment - Set to DEV to start memcached and mysql locally for development purposes
serveralias - Set to allow alternative hostnames for a site.
PHPVER - Set to use a different version of PHP refer to versions here.
Helpful Notes
- On your first creation of a dev instance, you will be dumped to the logs output. Hit
ctrl + c
to exit the running process. - If you want to restart the instance again, run
docker start {name-of-your-container}
in the example, name-of-your-cintainer is local-dev - To stop a restarted instance, run
docker stop {name-of-your-container}
- To view log stream from container, run
docker logs -f {name-of-your-container}
- To delete a container, run
docker rm {name-of-your-container}
Note: this does not delete the files in public_html or database, as those are store in your system - To view running containers, run
docker ps
- To view all created containers, run ```docker ps --all``
- To view all container images downloaded on your system, run
docker images