From ac6756c30a38130959932ef6df85a6367e154461 Mon Sep 17 00:00:00 2001 From: chabad360 Date: Fri, 5 Oct 2018 22:05:26 +0000 Subject: [PATCH] added help to dbench, and updated readme --- README.md | 24 ++++++++++-------------- dbench | 21 +++++++++++++++++++-- 2 files changed, 29 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 6308622c..a3d01a7e 100644 --- a/README.md +++ b/README.md @@ -84,7 +84,7 @@ Express dependency between services, which has two effects: #### 2. Build the container and install bench * Clone this repo and change your working directory to frappe_docker - + git clone --depth 1 https://github.com/frappe/frappe_docker.git cd frappe_docker @@ -94,7 +94,7 @@ Express dependency between services, which has two effects: It creates a user, frappe inside the frappe container, whose working directory is /home/frappe. It also clones the bench-repo from [here](https://github.com/frappe/bench) - docker-compose up -d + ./dbench setup docker Note: Please do not remove the bench-repo directory the above commands will create @@ -102,29 +102,25 @@ Express dependency between services, which has two effects: #### Basic Usage ##### Make sure your current directory is frappe_docker -1. First time setup - +1. First time setup + ./dbench init -2. Command to start all the containers +2. Command to be executed everytime after starting your containers - docker-compose start + ./dbench setup hosts -3. Command to be executed everytime after starting your containers +3. Command to enter your container - ./dbench -s + ./dbench -4. Command to enter your container - - docker exec -it frappe bash - -5. All bench commands can also be directly run from the host machine by using dbench. For instance ```bench start``` can be executed by running ```./dbench -c start```. Just preface the option with ./dbench -c. For more information on dbench run the command ```./dbench -h```. +4. All bench commands can also be directly run from the host machine by using dbench. For instance ```bench start``` can be executed by running ```./dbench start```. Just preface the option with **`./dbench`**. For more information on dbench run the command ```./dbench -h```. For more info on how to build this docker container refer to this [Wiki](https://github.com/frappe/frappe_docker/wiki/Hitchhiker's-guide-to-building-this-frappe_docker-image) To login to Frappe / ERPNext, open your browser and go to `[your-external-ip]:8000`, probably `localhost:8000` -The default username is "Administrator" and password is what you set when you created the new site. The default admin password is set in common_site_config.json, and is set to 'admin' in this docker image. +The default username is "Administrator" and password is what you set when you created the new site. The default admin password is set in common_site_config.json, and is set to 'admin' in this docker image. ## Built With diff --git a/dbench b/dbench index 7ed7e387..225a25e3 100755 --- a/dbench +++ b/dbench @@ -4,7 +4,7 @@ if [[ $# -eq 0 ]]; then docker exec -it frappe bash elif [ "$1" == 'init' ]; then docker exec -itu root frappe bash -c "cd /home/frappe && chown -R frappe:frappe ./*" - docker exec -i frappe bash -c "cd .. && bench init frappe-bench --ignore-exist --skip-redis-config-generation" + docker exec -i frappe bash -c "cd .. && bench init $2 --ignore-exist --skip-redis-config-generation" docker exec -i frappe bash -c "mv Procfile_docker Procfile && mv sites/common_site_config_docker.json sites/common_site_config.json && bench set-mariadb-host mariadb" elif [ "$1" == 'setup' ]; then if [ "$2" == 'docker' ]; then @@ -18,7 +18,7 @@ elif [ "$1" == 'setup' ]; then a="${a//$'\n'/ }" a=$(echo $a | tr -d / ) result="127.0.0.1 ${a}" - sudo echo $result >> /etc/hosts + echo $result | sudo tee -a /etc/hosts docker exec -iu root frappe bash -c "echo ${result} | tee --append /etc/hosts" docker exec -itu root frappe bash -c "printf '# User rules for frappe\nfrappe ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers.d/frappe" fi @@ -27,6 +27,23 @@ elif [ "$1" == '-c' ]; then user=$1 shift docker exec -iu "$user" frappe bash -c "$@" +elif [ "$1" == '-h' ]; then + echo "$0 [-h] | [ -c frappe | root ] [ command to send to bench ]" + echo "" + echo "$0 extends the Frappe Bench tool, and is used like it. However, it extends the tool in a few places." + echo "Usage:" + echo " $0" + echo " Launches you into an interactive shell in the container as user frappe" + echo " $0 init [bench folder name]" + echo " Runs \"bench init\" along with some other commands" + echo " $0 setup docker" + echo " starts docker using \"docker-compose up -d\"" + echo " $0 setup hosts" + echo " adds all sites to the hosts file, run with sudo" + echo " $0 -c frappe | root " + echo " Runs a command in the container, as the selected user" + echo " $0 [ command to send to bench ]" + echo " Runs a command in bench, i.e. $0 new-site site1.local = bench new-site site1.local" else IFS=" " docker exec -it frappe bash -c "bench $*"