Sign inSign up

luiswangtaiwan/webtareas

By luiswangtaiwan

•Updated 2 months ago

A WebBased Collaboration OpenSource Tool

Image
Content management system
0

2.8K

luiswangtaiwan/webtareas repository overview

⁠Quickstart: Kubernetes and webTareas

This quick-start guide demonstrates how to deploy webTareas to Kubernetes. Before starting, make sure you have Kubernetes(https://kubernetes.io/docs/setup/⁠) installed.

1.Download YAML file from the following website: http://sourceforge.net/projects/webtareas/files/kubernetes/⁠

2.Set ip addres in the YAML file. For example, if your kubernetes cluster ip is 192.168.0.1

  $ nano webtareas-3.0-php8.4-fpm-postgres-vsftpd.yml

Find WT_ROOT: "https://YOUR.IP.HERE:30443⁠" and replace with WT_ROOT: "https://192.168.0.1:30443⁠"

3.Deploy webTareas to Kubernetes. For example, if the YAML file is webtareas-3.0-php8.4-fpm-postgres-vsftpd.yml

  $ kubectl apply -f webtareas-3.0-php8.4-fpm-postgres-vsftpd.yml

4.Wait for a few seconds and open your browser. For example, if your kubernetes cluster ip is 192.168.0.1

https://192.168.0.1:30443⁠

5.Input username and password and login. The default username/password is admin/admin

Enjoy :)

If your Pod is stuck in the Pending state, most probably your cluster does not have a Physical Volume Provisioner. This can be verified as the following: kubectl get pvc,pod -n webtareas

In this case, and if this is not a production environment, you might want to install the Local Path Provisioner(https://github.com/rancher/local-path-provisioner⁠) kubectl apply -f https://raw.githubusercontent.com/rancher/local-path-provisioner/master/deploy/local-path-storage.yaml⁠ kubectl annotate storageclass local-path storageclass.kubernetes.io/is-default-class=true

⁠Environment Variable List (Installation):
  • WT_DBTYPE - Database type (Required. Valid values: pg-PostgreSQL my-MySQL)
  • WT_LANG - Default language (Optional. Default: en)
  • WT_INSTALLTYPE - Installation type (Optional. Default: online Valid values: online-Online offline-Offline)
  • WT_DBSERVER - Database server name (Optional. Default: localhost)
  • MYSQL_USER - MySQL login (Required.) NOTE 1
  • MYSQL_PASSWORD - MySQL password (Required.) NOTE 1
  • MYSQL_DATABASE - MySQL database name (Required.) NOTE 1
  • POSTGRES_USER - PostgreSQL login (Required.) NOTE 2
  • POSTGRES_PASSWORD - PostgreSQL password (Required.) NOTE 2
  • POSTGRES_DB - PostgreSQL database name (Required.) NOTE 2
  • WT_ENABLENOTIFY - Enable notification (Optional. Default: true Valid values: true false)
  • WT_NOTIFYMETHOD - Notification method (Optional. Default: mail Valid values: mail smtp) NOTE 3
  • WT_SMTPSERVER - SMTP server name (Optional.) NOTE 4
  • WT_SMTPPORT - SMTP server port (Optional.) NOTE 4
  • WT_SMTPSECURE - SMTP use secured connection (Optional.) NOTE 4
  • WT_SMTPLOGIN - SMTP login name (Optional.) NOTE 4
  • WT_SMTPPASSWORD - SMTP password (Optional.) NOTE 4
  • WT_MKDIRMETHOD - Create folder method (Optional. Default: PHP Valid values: PHP FTP)
  • WT_FTPSERVER - FTP server name (Optional.) NOTE 5
  • WT_FTPLOGIN - FTP login name (Optional.) NOTE 5
  • WT_FTPPASSWORD - FTP password (Optional.) NOTE 5
  • WT_FTPROOT - FTP root directory (Optional.) NOTE 5
  • WT_FILEEXT - Supported file extensions (Optional. Default: tif,tiff,bmp,jpg,jpeg,gif,png,eps,pcm,wav,aiff,mp3,aac,oga,wma,flac,alac,mp4,mov,avi,flv,mkv,ogv,wmv,avchd,webm,h264,m4v,swf,doc,docx,odt,pdf,rtf,txt,xml,xps,csv,ods,xls,xlsx,odp,ppt,pptx,zip,7z,rar,arj,gz,tar,deb,rpm,bin,dmg,iso,vcd,vcf)
  • WT_ENABLEGMTTZ - Enable GMT timezone (Optional. Default:true Valid values: true false)
  • WT_TIMEZONE - Default timezone (Optional. Default: 0 Valid values: -12 -11 -10 ... 12)
  • WT_CURRENCY - Default currency (Optional. Default: USD)
  • WT_CURRRIGHT - Display currency on the right (Optional. Default: false Valid values: true false)
  • WT_UPLOADMAXIMUM - The maximum size of an uploaded file (Optional. Default: 2M)
  • WT_ROOT - Website url root (Optional.)
  • WT_CLIENTCOLLAB - Enable client collaboration (Optional. Default: true Valid values: true false)
  • WT_TIMESHEET - Enable timesheet (Optional. Default: true Valid values: true false)
  • WT_FLEXTIME - Enable flextime (Optional. Default: true Valid values: true false) NOTE 6
  • WT_EQUIPMENT - Enable equipment management (Optional. Default: true Valid values: true false)
  • WT_MATERIAL - Enable material management (Optional. Default: true Valid values: true false)
  • WT_COSTMETHOD - Default project cost method (Optional. Default: 1 Valid values: 1-use the cost rate of member only 2-use the hourly rate of service first and use the cost rate of member if no service specified 3-use the hourly rate of service only)
  • WT_PERIODUNIT - Unit of period (Optional. Default: week Valid values: week month)
  • WT_WEEKRULE - The first week of the year (Optional. Default: 2 Valid values: 0-first day 1-first full week 2-first four day week)
  • WT_FIRSTOFWEEK - The first day of the week (Optional: Default: 1 Valid values: 1-Monday 2-Tuesday 3-Wednesday 4-Thursday 5-Friday 6-Saturday 7-Sunday)
  • WT_LOCKPERIOD - Auto lock period (Optional. Default: 7 Valid values: 0-no auto lock 1-auto lock after 1 day 2 3 5 7 14 28)
  • WT_CHECKUPDATE - Check for new version (Optional. Default: true Valid values: true false)
  • WT_PROJECTFILTER - Enable project filter (Optional. Default: true Valid values: true false)
  • WT_DEFAULTPERMISSIONS - Default file permissions (Optional. Default: 63)
  • WT_FILEPERMISSIONGROUP - File permission group (Optional. Default: department Valid values: department-department profile-user profile)
  • WT_CONTACTNAME - Contact name format (Optional. Default: a Valid values: a-First name Last Name b-Last name, First name c-Last name First name d-Last name,First name e-Salutation First name f-Salutation First name Last name g-Last name,First name,Salutation)
  • WT_HOURACCURACY - Decimal place for log hours (Optional. Default: 1 Valid values: 1 ... 6)
  • WT_QUANTITYACCURACY - Decimal place for quantity (Optional. Default: 0 Valid values: 1 ... 6)
  • WT_MEASUREACCURACY - Decimal place for measure (Optional. Default: 2 Valid values: 1 ... 6)
  • WT_RATEACCURACY - Decimal place for service rate/price (Optional. Default: 2 Valid values: 1 ... 6)
  • WT_COSTACCURACY - Decimal place for project cost/expense/totals (Optional. Default: 2 Valid values: 1 ... 6)
  • WT_PERCENTACCURACY - Decimal place for percentage (Optional. Default: 2 Valid values: 1 ... 6)
  • WT_DECIMALPOINT - Separator for the decimal point (Optional. Default: .)
  • WT_THOUSANDS - Thousands separator (Optional. Default: ,)
  • WT_DATEFORMAT - Default date format (Optional. Default: a Valid values: a-Y-m-d|yy-mm-dd|Y-m b-d-m-Y|dd-mm-yy|m-Y c-d-m-y|dd-mm-y|m-y d-d/m/Y|dd/mm/yy|m/Y e-d/m/y|dd/mm/y|m/y f-j/n/Y|d/m/yy|n/Y g-j/n/y|d/m/y|n/y h-m/d/Y|mm/dd/yy|m/Y i-m/d/y|mm/dd/y|m/y j-j.m.Y|d.mm.yy|m.Y k-j.n.Y|d.m.yy|n.Y l-d.m.Y|dd.mm.yy|m.Y m-d.m.y|dd.mm.y|m.y n-j.n.y|d.m.y|n.y o-Y.m.d|yy.mm.dd|Y.m p-d m Y|dd mm yy|m Y q-d m y|dd mm y|m y)
  • WT_TIMEFORMAT - Default time format (Optional. Default: 24H Valid values: 12H 24H)
  • WT_INLINEIMG - Enable inline images (Optional. Default: true Valid values: true false)
  • WT_LOCKTHRESHOLD - Account lockout threshold (Optional. Default: 10 Valid values: 0-disabled 3-failed login 3 times 5-failed login 5 times 10-failed login 10 times)
  • WT_BANTHRESHOLD - IP banned threshold (Optional. Default: 50 Valid values: 0 15 25 50)
  • WT_DETECTHIJACK - Detect suspicious sign-in (Optional. Default: off Valid values: on off)
  • WT_ADMINLOGIN - Admin login (Required)
  • WT_ADMINPASSWORD - Admin password (Required.)
  • WT_ADMINMAIL - Admin email address (Required.)
  • WT_TABLEPREFIX - Table prefix (Optional.)

NOTE 1 - Only apply if WT_DBTYPE=my

NOTE 2 - Only apply if WT_DBTYPE=pg

NOTE 3 - Only apply if WT_ENABLENOTIFY=true

NOTE 4 - Only apply if WT_NOTIFYMETHOD=smtp

NOTE 5 - Only apply if WT_MKDIRMETHOD=FTP

NOTE 6 - Only apply if WT_TIMESHEET=true

⁠Upgrade webTareas on Kubernetes

The following guide demonstrates how to upgrade webTareas to Kubernetes. Before starting, make sure you have webtareas-2.8-php7.4-fpm-postgres-vsftpd.yml deployed to Kubernetes.

1.Login the original website and turn it off For example, if your kubernetes cluster ip is 192.168.0.1

Open http://192.168.0.1/general/login.php⁠ in your browser and login as admin Goto http://192.168.0.1/administration/updatesettings.php⁠ Make sure 'Turn your site off ?' is 'Yes' Click 'Save' button and logout

2.Download webtareas-2.8to3.0-php8.4-fpm-postgres-vsftpd.yml YAML file from the following website: http://sourceforge.net/projects/webtareas/files/kubernetes/⁠

3.Set ip addres in the YAML file. For example, if your kubernetes cluster ip is 192.168.0.1

$ nano webtareas-3.0-php8.4-fpm-postgres-vsftpd.yml

Find WT_ROOT: "https://YOUR.IP.HERE:30443⁠" and replace with WT_ROOT: "https://192.168.0.1:30443⁠"

4.Apply this configuration.

$ kubectl apply -f webtareas-2.8to3.0-php8.4-fpm-postgres-vsftpd.yml

5.Check if the new website deployment is ready.

$ kubectl get deployment -n webtareas -w

6.Open your browser and enjoy:)

⁠Environment Variable List (Upgradation):
  • WT_PREVROOT - Previous installation root (Required.)
  • WT_DBTYPE - Database type (Required. Valid values: pg-PostgreSQL my-MySQL)
  • WT_DBSERVER - Database server name (Optional. Default: localhost)
  • WT_TABLEPREFIX - Table prefix (Optional.)
  • WT_INSTALLTYPE - Installation type (Optional. Default: online Valid values: online-Online offline-Offline)
  • MYSQL_USER - MySQL login (Required.) NOTE 1
  • MYSQL_PASSWORD - MySQL password (Required.) NOTE 1
  • MYSQL_DATABASE - MySQL database name (Required.) NOTE 1
  • POSTGRES_USER - PostgreSQL login (Required.) NOTE 2
  • POSTGRES_PASSWORD - PostgreSQL password (Required.) NOTE 2
  • POSTGRES_DB - PostgreSQL database name (Required.) NOTE 2
  • WT_MKDIRMETHOD - Create folder method (Optional. Default: PHP Valid values: PHP FTP)
  • WT_FTPSERVER - FTP server name (Optional.) NOTE 5
  • WT_FTPLOGIN - FTP login name (Optional.) NOTE 5
  • WT_FTPPASSWORD - FTP password (Optional.) NOTE 5
  • WT_FTPROOT - FTP root directory (Optional.) NOTE 5
  • WT_UPLOADMAXIMUM - The maximum size of an uploaded file (Optional. Default: 2M)
  • WT_ROOT - Website url root (Optional.)
⁠Quickstart: Compose and webTareas

You can use Docker Compose to easily run webTareas in an isolated environment built with Docker containers. This quick-start guide demonstrates how to use Compose to set up and run webTareas. Before starting, make sure you have Compose(https://docs.docker.com/compose/install/⁠) installed.

1.Download compressed docker compose file from the following website: http://sourceforge.net/projects/webtareas/files/docker-compose/⁠

2.Extract this file to an empty directory. For example, if you named your directory my_webtareas

  $ unzip compose-3.0-php8.4-fpm-postgres-vsftpd.zip -d my_webtareas

3.Change into the directory. For example, if you named your directory my_webtareas

  $ cd my_webtareas

4.Set ip addres in the environment file. For example, if your ip is 192.168.0.1

  $ nano env-3.0-php8.4-fpm-postgres-vsftpd

Find WT_ROOT=https://YOUR.IP.HERE⁠ and replace with WT_ROOT=https://192.168.0.1⁠

5.Create and start containers. For example, if the compose file is docker-compose-3.0-php8.4-fpm-postgres-vsftpd.yml

  $ docker-compose -f docker-compose-3.0-php8.4-fpm-postgres-vsftpd.yml up -d

6.Wait for a few seconds and open your browser. For example, if your ip is 192.168.0.1

https://192.168.0.1⁠

7.Input username and password and login. The default username/password is admin/admin

Enjoy :)

Tag summary

Content type

Image

Digest

sha256:e31c849a0…

Size

73.3 MB

Last updated

2 months ago

docker pull luiswangtaiwan/webtareas