readme, hostname

master
Cold-Egg 5 years ago
parent e30eb685f2
commit d90e21df2f

@ -1,11 +1,10 @@
# OpenLiteSpeed WordPress Docker Container (beta) # OpenLiteSpeed WordPress Docker Container (beta)
[![Build Status](https://travis-ci.com/litespeedtech/ols-docker-env.svg?branch=master)](https://hub.docker.com/r/litespeedtech/openlitespeed) [![Build Status](https://travis-ci.com/litespeedtech/ols-docker-env.svg?branch=master)](https://hub.docker.com/r/litespeedtech/openlitespeed)
[![OpenLiteSpeed](https://img.shields.io/badge/openlitespeed-1.5.10-informational?style=flat&color=blue)](https://hub.docker.com/r/litespeedtech/openlitespeed) [![OpenLiteSpeed](https://img.shields.io/badge/openlitespeed-1.6.4-informational?style=flat&color=blue)](https://hub.docker.com/r/litespeedtech/openlitespeed)
[![docker pulls](https://img.shields.io/docker/pulls/litespeed/openlitespeed?style=flat&color=blue)](https://hub.docker.com/r/litespeedtech/openlitespeed) [![docker pulls](https://img.shields.io/docker/pulls/litespeed/openlitespeed?style=flat&color=blue)](https://hub.docker.com/r/litespeedtech/openlitespeed)
[![docker-beta pulls](https://img.shields.io/docker/pulls/litespeed/openlitespeed?style=flat&color=blue)](https://hub.docker.com/r/litespeedtech/openlitespeed-beta)
Lightweight WordPress container with OpenLiteSpeed 1.5.10 & PHP 7.3 based on Ubuntu 18.04 Linux. Lightweight WordPress container with OpenLiteSpeed 1.6.4 & PHP 7.3 based on Ubuntu 18.04 Linux.
WordPress version will install: Latest
### Prerequisites ### Prerequisites
1. [Install Docker](https://www.docker.com/) 1. [Install Docker](https://www.docker.com/)
@ -16,19 +15,26 @@ git clone https://github.com/litespeedtech/ols-docker-env.git
``` ```
## Configuration ## Configuration
Edit the `.env` file to change the WordPress Domain, user and password, default MySQL root and wordpress password . Edit the `.env` file to update the demo site domain, default MySQL user and password.
## Installation ## Installation
Open a terminal and `cd` to the folder in which `docker-compose.yml` is saved and run: Open a terminal and `cd` to the folder in which `docker-compose.yml` is saved and run:
``` ```
docker-compose up docker-compose up
``` ```
There's an existing `sites` folder next to your docker-compose.yml file.
* `sites` the location of your WordPress application ## Components
* `sites/localhost/logs/` - the location of your access log The docker image installs several packages and performs other actions on your system.
The containers are now built and running. You should be able to access the WordPress installation with the configured domain in the browser address. By default it is http://127.0.0.1. |Component|Version|
| :-------------: | :-------------: |
|Linux|Ubuntu 18.04|
|OpenLiteSpeed|[Latest version](https://openlitespeed.org/downloads/)|
|MariaDB|[10.3](https://hub.docker.com/_/mariadb)|
|PHP|[7.3](http://rpms.litespeedtech.com/debian/)|
|LiteSpeed Cache|[Latest from WordPress.org](https://wordpress.org/plugins/litespeed-cache/)|
|Certbot|[Latest from Certbot's PPA](https://launchpad.net/~certbot/+archive/ubuntu/certbot)|
|WordPress|[Latest from WordPress](https://wordpress.org/download/)|
## Usage ## Usage
### Starting containers ### Starting containers
@ -40,15 +46,7 @@ Running with daemon mode
``` ```
docker-compose up -d docker-compose up -d
``` ```
Running with start method The containers are now built and running.
```
docker-compose start
```
Running start after config changing
```
docker-compose up --build
```
### Stopping containers ### Stopping containers
``` ```
@ -59,10 +57,62 @@ To stop and remove all the containers use the down command:
``` ```
docker-compose down docker-compose down
``` ```
### Install packages
Edit docker-compose.yml file and put the PACKAGE name on extensions entry, we use `vim` as example.
```
litespeed:
build:
context: ./config/litespeed/xxx/
args:
extensions: vim
```
After saving, running with `--build` after config changing
```
docker-compose up --build
```
### Set WebAdmin Password
Strongly recommended to set personal passwprd at first time
```
bash bin/webadmin.sh my_password
```
### Start demo site
After running follow command, you should be able to access the WordPress installation with the configured domain in the browser address. By default it is http://127.0.0.1.
```
bash bin/demosite.sh
```
### Create Domain with Virtual Host
```
bash bin/domain.sh -add example.com
```
### Create Database
Auto generate method:
```
bash bin/database.sh -domain example.com
```
Specify method:
```
bash bin/database.sh -domain example.com -user user_name -password my_password -database database_name
```
### Download wordpress site
If you ran the database.sh script first for the same domain, it will pre-config the wp-config for you
```
./bin/appinstall.sh -app wordpress -domain example.com
```
### Apply Let's Encrypt Certificate
Just enter the root domain and it will auto check and auto apply with/with out www certificate for us.
```
./bin/cert.sh example.com
```
### Data Structure
There's an existing `sites` folder next to your `docker-compose.yml` file.
* `sites/DOMAIN/html/` the location of your Document root (WordPress application will install here)
* `sites/DOMAIN/logs/` - the location of your access log
### Adminer (formerly phpMinAdmin) ### Adminer (formerly phpMinAdmin)
You can also visit http://127.0.0.1:8080 to access Data Base after starting the containers. You can also visit http://127.0.0.1:8080 to access DataBase after starting the containers.
The default username is root, and the password is the same as supplied in the .env file. The default username is root, and the password is the same as supplied in the .env file.

@ -8,6 +8,7 @@ WWW_UID=''
WWW_GID='' WWW_GID=''
WP_CONST_CONF='' WP_CONST_CONF=''
PUB_IP=$(curl -s http://checkip.amazonaws.com) PUB_IP=$(curl -s http://checkip.amazonaws.com)
DB_HOST='mysql'
PLUGINLIST="litespeed-cache.zip" PLUGINLIST="litespeed-cache.zip"
THEME='twentytwenty' THEME='twentytwenty'
@ -34,14 +35,14 @@ linechange(){
ck_ed(){ ck_ed(){
if [ ! -f /bin/ed ]; then if [ ! -f /bin/ed ]; then
echo "no ed, ready to install" echo "Install ed .."
apt-get install ed -y > /dev/null 2>&1 apt-get install ed -y > /dev/null 2>&1
fi fi
} }
ck_unzip(){ ck_unzip(){
if [ ! -f /usr/bin/unzip ]; then if [ ! -f /usr/bin/unzip ]; then
echo "no unzip, ready to install" echo "Install unzip .."
apt-get install unzip -y > /dev/null 2>&1 apt-get install unzip -y > /dev/null 2>&1
fi fi
} }
@ -62,7 +63,7 @@ get_db_pass(){
SQL_USER=$(grep -i Username ${VH_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"') SQL_USER=$(grep -i Username ${VH_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"')
SQL_PASS=$(grep -i Password ${VH_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"') SQL_PASS=$(grep -i Password ${VH_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"')
else else
echo 'DB_PASS can not locate!' echo 'db pass file can not locate, skip wp-config pre-config.'
fi fi
} }
@ -100,7 +101,7 @@ check_sql_native(){
install_wp_plugin(){ install_wp_plugin(){
for PLUGIN in ${PLUGINLIST}; do for PLUGIN in ${PLUGINLIST}; do
wget -q -P ${VH_DOC_ROOT}/wp-content/plugins/ https://downloads.wordpress.org/plugin/${PLUGIN} wget -q -P ${VH_DOC_ROOT}/wp-content/plugins/ https://downloads.wordpress.org/plugin/${PLUGIN}
if [ $? = 0 ]; then if [ ${?} = 0 ]; then
ck_unzip ck_unzip
unzip -qq -o ${VH_DOC_ROOT}/wp-content/plugins/${PLUGIN} -d ${VH_DOC_ROOT}/wp-content/plugins/ unzip -qq -o ${VH_DOC_ROOT}/wp-content/plugins/${PLUGIN} -d ${VH_DOC_ROOT}/wp-content/plugins/
else else
@ -219,7 +220,8 @@ preinstall_wordpress(){
linechange 'DB_USER' ${VH_DOC_ROOT}/wp-config.php "${NEWDBPWD}" linechange 'DB_USER' ${VH_DOC_ROOT}/wp-config.php "${NEWDBPWD}"
NEWDBPWD="define('DB_NAME', '${SQL_DB}');" NEWDBPWD="define('DB_NAME', '${SQL_DB}');"
linechange 'DB_NAME' ${VH_DOC_ROOT}/wp-config.php "${NEWDBPWD}" linechange 'DB_NAME' ${VH_DOC_ROOT}/wp-config.php "${NEWDBPWD}"
NEWDBPWD="define('DB_HOST', '${PUB_IP}');" #NEWDBPWD="define('DB_HOST', '${PUB_IP}');"
NEWDBPWD="define('DB_HOST', '${DB_HOST}');"
linechange 'DB_HOST' ${VH_DOC_ROOT}/wp-config.php "${NEWDBPWD}" linechange 'DB_HOST' ${VH_DOC_ROOT}/wp-config.php "${NEWDBPWD}"
elif [ -f ${VH_DOC_ROOT}/wp-config.php ]; then elif [ -f ${VH_DOC_ROOT}/wp-config.php ]; then
echo "${VH_DOC_ROOT}/wp-config.php already exist, exit !" echo "${VH_DOC_ROOT}/wp-config.php already exist, exit !"
@ -249,7 +251,6 @@ change_owner(){
fi fi
} }
main(){ main(){
set_vh_docroot ${DOMAIN} set_vh_docroot ${DOMAIN}
get_owner get_owner

Loading…
Cancel
Save