a apache webserver ran out of docker. is not criticaly dependent on external services.
images used
- php:8.0-apache
- postgres:15
- adminer:4.8.1-standalone
frameworks
- apache
- bootstrap
ocassionaly avaliable at 47.37.113.251:8080 . otherwise you can host it yourself.
note : the powershell scriptes are only to help automate docker commands. they are not necessary
- build & run the project with
docker compose up -d --build - visit localhost:8080
- install Docker & clone this repo. turn on the docker daemon.
- navigate to the folder containing run_phpApache.ps1 , note: addiitonsl paramaters are best found in the .ps1 script itself.
- for the initial startup run
.\run_phpApache.ps1 -rebuild -rebuildb, afterwards just.\run_phpApache.ps1will work..\run_phpApache.ps1 -helpfor help or see the param fields of the script (starts line 5).- the
-visitflag will open automatically open your browser to the site
- check that private_request/config.php(generated when
.\run_phpApache.ps1is ran) has the correct information for the psql db. the file psqlConnecitonInfo.json is needed, its generated by the powershell script. it supplies the psql db's port & ip inside the docker network.
- to quit run
.\run_phpApache.ps1 -stopor stop the containers manualy - if the db is not initialized... run
sh /setup/templateBuilder.shfrom inside the psql container. that should reset it to defaults, otherwise continue reading; pgsql setup: thepgsql_dirty.tarfile (stored in a google drive since too large(.7gb) for casual upload) is a .tar of a working postgresql db container saved as a iamge, then a container. use docker to create a image then container with it and make sure the name matches whats in the[string]$dbContainer = 'aphpsql'paramater in the powershell launch script aka. run_phpApache.ps1 : around line#20 - sql conneciton error. using hte powershell script or initial starts may leave connection errors. fix this by opening
webserver/private_request/psqlConnectionInfo.jsonand changing the value of theiPv4entry to the container name or ip of the database container (can be found withdocker network inspect).
- remake everyhting using consistent oop
- caching with mod_cach apache modules