How to install Bibledit Cloud on a VPS (2023 update)
Extracted text from How_to_install_Bibledit_Cloud_on_a_VPS.pdf:
How to install Bibledit Cloud on a VPS I have shared in two other articles why I recommend Bibledit for translation teams. My translation team has been using various versions of Bibledit since at least 2007. We are translating into Indonesian (Indonesia’s national language). Our NT is in its third edition and we hope to finish the OT in 2026. By this time we are also using Paratext for some translation tasks. One team member is responsible for communication between our team and consultants, and our consultants all use Paratext. Another team member is responsible for all prepublication consistency checks and typesetting. So she also uses Paratext for that. But even those two team members prefer to use Bibledit whenever they are doing normal translation work revising our drafts of OT books. Two members of our team use Apple computers, and previously our whole team used Ubuntu or similar Linux distributions. Paratext does not run on all platforms, whereas Bibledit can run on everything, such as on Chromebooks or Android devices. When our team was in the early stages of drafting, I found that Android tablets using Bibledit were very useful, easy for new users to operate, and cheap. Paratext Lite runs on Android, and SIL has been making good improvements to that program. But Bibledit runs circles around Paratext Lite. Bibledit can run in a browser window on Android, or one can install the application in the Play Store. If a translator doesn’t have continuous Internet access, then the Android app (or programs for all other devices) allow for translators to be productive for a week or two without the Internet. Paratext Lite requires constant Internet access. Bibledit is simple and intuitive to use, and it allows team members to view many translation resources. One of my favorite Bibledit Workspaces is pictured below. This is the Workspace I often use for normal editing of our translation and communicating with my team via the Notes in the left column. My team members can scroll down through 30 translation resources in the middle column. Bibledit’s many configuration options and resource options allow me to have 10 translation resources in the Indonesian language. One of the ease of use features I most appreciate is that our translators do not need to remember to do a Send/Receive procedure to save their translation data. Bibledit handles the sending and receiving automatically, if there is a working Internet connection.
The one thing that is a bit daunting about Bibledit is the process of setting up an Internet VPS server to host the Bibledit-Cloud program, which is the repository for all the data that will be shared to and from all of your translation team’s devices. It is NOT hard to install the Cloud program on a server. It is just something that most people have never had to do. It only takes me about 15 minutes to complete the basic steps below to set up Bibledit-Cloud on a Digital Ocean ‘droplet’. But if you are slowly reading the steps and carefully following the instructions, it might take half an hour for you to get to the first Administration login screen. I have found that DigitalOcean.com is very easy to work with in installing Bibledit Cloud, and their servers are very fast. So sign up and give them a credit card to charge. I chose the $6 option via the choices below.
You need to choose Ubuntu for the operating system because that is what Bibledit Cloud runs on. I chose the Basic plan and the $6 per month option which has plenty of space for Bibledit.
Don’t bother with SSH keys. Just set a tricky password, and be sure to write it down where you can find it later. You will need this password for some steps below.
Don’t bother to choose anything else you might have to pay for. Just click to create the droplet.
When the Ubuntu installation process is complete,
you will be able to click to see information about your droplet. (Note the position to click is where my cursor is in the screenshot below.)
200
You can now click to open the Console/Terminal window. (On the right, where my mouse cursor is pictured below.)
NOTE: I don’t remember Digital Ocean’s console asking for me to Login to the console. After all, one is opening the console having already logged into their user panel. For many other hosting services, when their console appears, it will ask you to Login. For people accessing the server using SSH in a Linux terminal, you will be asked to log in. In either case the normal procedure is to type in the admin default username root at the Login prompt. Then you will be asked to give the password, and that is that tricky password that you determined when registering your server account, the one I told you to write down. When the Digital Ocean console opens, it may tell you there are no updates. But it is still a good idea to do an update.
The command to update is sudo apt update but because you have entered with root status, you can skip typing all ‘sudo’ (superuser) commands and just type apt update. Turns out that this time the Digital Ocean Console was right and there were no updates waiting to be installed. On a different server, or at a different time, you will probably find that there will be some updates to install. If you do find updates, issue the command apt upgrade This will upgrade everything. Type y to say Yes to give final permission for the updates. The next thing I always do in a new server is to install the Midnight Commander file manager utility program with the command apt install mc Say y (yes) and it will install.
Now you are ready to follow the simple procedures for installing Bibledit Cloud using the published packages. The link to the installation page is https://bibledit.org/install-bibledit-cloud-on-ubuntu/. This method also ensures that it will be easy to install Bibledit Cloud program updates. Once again, you are doing this install as a root user, which means that you don’t need to type in the ‘sudo’ word at the beginning of each line. Copy all of the line, or everything except ‘sudo’ and you can paste it into Digital Ocean’s console using Ctrl-Alt-V. (You probably know that the normal paste command is Ctrl-V, but to paste into Linux terminals, you need to hold down the Alt key also.) If you are installing into a different VPS provider, you might not be able to paste into their console, but Digital Ocean nicely provides that capability.
This first step is not really needed, as the Ubuntu version installed at Digital Ocean seems to include Software Properties Common.
After giving the command pictured below to add the Bibledit repository to your Ubuntu server, you will need to hit Enter to agree to complete the process.
The other two steps are easy: apt update and apt install bibledit-cloud That last installation step takes 2-3 minutes to complete. Then you will be able to use your Internet browser to log in as the administrator of your Bibledit-Cloud instance. The IP address is found back at the Digital Ocean control panel, on the left in the screenshot below.
Hover over the IPV4 address and a button will appear to copy it. Just like the instructions at bibledit.org say, I was able to log into my new instance of Bibledit-Cloud by pasting that IP address into the address bar of my Internet browser and adding :8080. In other words: 150.223.55.148:8080 The form that appears asks you to give your name, set a password for the admin account, and give an email address, plus you need to answer a security question, for which the answer is actually given in a hint. Remember to write down this new password!
You’re in! You’ve done it! See, it wasn’t hard! If you are leading a team that is just starting out with Bibledit, some of the things you will want to do next are: ● Start a Bible project: Settings > Bibles. If you have data in USFM format, you can import it also under that same menu entry. If you don’t have USFM data, you can also create empty Bible books, which just contain the appropriate number of verses for each chapter. If you have chapters of data but they are not in USFM format, contact the Bibledit forum for pointers. ● You can then add new members to your team at Settings > Users. Your team members should be given the Translator status. ● If you have related language Bible books that can be used as translation resources, you can import these Bibles (Settings > Bibles), and then convert them to USFM resources using the same menu. ● You will want to pick from a thousand choices for translation resources available and give a list of them to your translation team. You do this by opening a Resource window and choosing Organize, then click on the + sign at the bottom of that page. You probably will want to instruct your team to arrange their resources in a logical order, like source languages first, literal translations next, followed by meaning based translations. Or you might want to order national/related language translations first, before English resources. ● Your team will be able to connect their tablets, computers, or even cell phones to your Bibledit Cloud. They can do this via apps for any kind of device, or by simply connecting to the address using an Internet browser. The advantage of the apps is that a translator can work for days at a time without an Internet connection. This will only be effective if the translator has also downloaded all the important resources into his/her device. If they are not installed locally, the Bibledit apps will try to access them via the Internet. ● You will want to configure Bibledit Cloud so that it can send email notifications to you and your team. Notifications can be about new or updated translation notes, errors in saving a verse, or information about changes to the translated text. The Admin user can set this up via Settings > Mail. ● You will want to set up some Workspaces that make it easy for your team members to do certain tasks, and then these can be shared with your team. See Settings > Workspaces. Different Workspaces can be used for viewing recent changes to the translation, finding and editing text, or finding all instances of a Greek or Hebrew word, etc.
Setting up your Bibledit site to use use https security See this file: Help (bibledit.org)
It is not necessary for your Bibledit server to have a domain name or to use https. You aren’t selling anything and people aren’t giving their credit card information while using Bibledit. However if you do want to set up those things, you will point the domain name you purchase to the IP address of your Bibledit server. And you will need to follow these instructions for setting up https security: Navigate to /var/bibledit/bibledit-cloud/config by giving this command: $ cd /var/bibledit/bibledit-cloud/config Read the config.txt file. If you have Filezilla, use it to save the config.txt file to your computer, so that you can read it in another window while you execute console commands. Make sure that you have the named empty files and *.txt files required present in the config directory, as specified in the config.txt file. Decide on what even-numbered port number you will use (if you plan to change from the default of 8080). When https is enabled, the port number in the browser address will increment by 1 to become an odd number (like 8081). You will need to generate security certificates for your site. You can do this with the certbot program, which in Ubuntu will probably already be installed. (If not you will of course install it with a command like ‘apt install certbot’.) Before you run the certbot program you will need to open port 80 for incoming-traffic and stop the Apache2 firewall. Use these commands: $ sudo ufw allow 80/tcp $ sudo ufw status $ systemctl stop apache2.service Enter the following command: $ certbot certonly You will need to give three answers: 2 (second choice) your domain name /root (the name of your root folder) You can then restart Apache: $ systemctl start apache2.service Give a big shout of ‘Halleluya’ if this works without an error message! Now your certificates will be in this folder: etc/letsencrypt/archive/ If you cd (change directory) to that location, you will find that the README program advises you not to copy the certificates. But Bibledit requires you to copy all the *.pem files to the
config folder, and you must do this correctly with the result that they have the right owner and group. Execute these two commands: $ cp /etc/letsencrypt/live/yoursite.org/.pem /var/bibledit/bibledit-cloud/config Put in your own IP address in the command above. Then this step is IMPORTANT. It makes the certs root:root. $ chmod ugo+r /var/bibledit/bibledit-cloud/config/.pem Anytime you make changes to the config directory (such as copying certificates), you will need to do this command so that your changes will take effect: $ service bibledit-cloud restart When you need to renew your certificates a couple of months down the line, the command is $ certbot renew Then you will need to copy the certificates again and set the ownership just like instructed above.
Setting up Google Translate to translate selected English resources into other languages It could be that your team would be able to profit from some resources Google-translated from one major language to another. (Of course you will need to tell your team that Google is not always correct.)
The Google Guide gives all the steps to install cloud. https://cloud.google.com/sdk/docs/install As a result of getting the free account, you will obtain two files which must be copied into the bibledit-cloud/config folder: googletranslate.json and googletranslate.txt The googletranslate.txt says to do this, but it didn’t work for me: If you are installing gcloud on Ubuntu, then the following steps will do it: $ sudo apt-get install apt-transport-https ca-certificates gnupg $ echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list $ curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add $ sudo apt update $ sudo apt install google-cloud-cli Go instead to https://cloud.google.com/sdk/docs/install.
If you can paste commands Ctrl-Shift-V in your console, use the copy button and paste that command in, then hit enter. There is no copy button on the next command because you will need to edit it. You can copy up to tar -xf google-cloud-cli-433.0.1-linux-x86, then type in _64.tar.gz. Run the command.
Then do steps 5 and 6. For #5, I rebooted and re-logged into VPS. The result of #6 is a VERY long link that will need to be copied and pasted into your browser. The trick is that you will need to copy that command. In the Linux terminal of my Chromebook, if I hit Ctrl-C it halted the initialization process. There is a popup window that showed that the highlighted string had been copied. Your console will probably act differently. Anyway, paste the long command into your Internet browser window and you will get this screen:
Click the copy button, then go back to the console and paste that two line string into the place provided. (If you hit Ctrl-C to copy, there is no longer a place provided. If that happen, you need to start all over again by giving the #6 command. The following screen will tell you to choose what GCloud account you want to link to this application. If you are reading this, then probably the first choice is the right one.
Running this will automatically put gcloud into the PATH. Once this is done, then Bibledit will be able to find the gcloud and then can start using it. The manager or administrator can then set up the resources to translate. The place to set this up is in Settings > Resources > Translated. The resource name will start with the word ‘Translated’, but then you fill in the rest. Then the three parts are filled by choosing from the choices given when you click the edit button.
Backing up your Bibledit Cloud data Your Bibledit Cloud instance has the ability to backup your Bible data every 5 minutes to a github repository. The Admin user sets this up at Settings > Repository.
For the safety of my team’s work, I have a Windows computer set up with the Windows Bibledit Client program that I leave running 24/7 with the screen displaying the Journal. This means that this computer holds a full record of all my team’s recent translation progress, as long as the Internet is running at my office. I use this same computer to run Bibledit’s Paratext Bridge, which merges changes found in Bible chapters between Paratext and Bibledit. The steps for that are: Run Bibledit’s Paratext Bridge. Then I close the Bibledit program and start Paratext. I then do a Send/Receive on Paratext, and all the modified chapters from Bibledit will be sent to the Paratext repository. If one of my team members has edited something in Paratext, those changes will have been merged into the Bibledit files already via the Bibledit Paratext Bridge. Those changes will have already been sent on to our Bibledit Cloud server. I close the Paratext program, and restart Bibledit, and leave it running with the Journal showing on the screen. You will also want to back up all the data from the Bibledit Cloud installation, including user identities, Notes the users have created, and databases. Use the Digital Ocean console to make a backup of the whole bibledit-cloud folder. It might be helpful to use the MC program to survey the directory structure that has been setup. You will find the bibledit-cloud folder at /var/bibledit. You can navigate to that directory by cd /var/bibledit Then in that directory you will issue a command like this: tar -czvf bbt-today’sDATE.tar.gz bibledit-cloud The part after -czvf is the name of the archive that will be created, which can be named anything you choose. ‘bibledit-cloud’ is the name of the all-important data folder that will be archived. When you unarchive this directory, the resultant folder will be named bibledit-cloud, not whatever you put as the name of the archive. Once you have made the archive, then you will need to copy it somewhere, probably to your computer. I suggest using the Filezilla freeware program. You will want to set up the Site Manager (under the File menu) like this:
Using Filezilla, you will be able to log into your Digital Ocean server and navigate to /var/bibledit, in the right hand column of the interface, then you will take bbtwhatever-you-named-it.tar.gz and drag it into the left hand column which shows the directories on your computer. Until I figure out an automatic way to do this, I will probably do this manually every week.
Migrating a Bibledit Cloud instance to a different server: The day may come when you want to migrate from Digital Ocean to a server. My team’s server is now in Indonesia. To migrate to a different server, you will just need to go through a similar setup process as outlined for Digital Ocean. For our server in Indonesia, their
console doesn’t allow any pasting of commands. Everything has to be typed in. But other than that, the process was very similar. Do all the steps of installing Bibledit Cloud, right up to the final step of logging in as an Administrator. You can skip that step. ● Set up Filezilla to be able to communicate with your new server. ● Using the new servers console, navigate to the /var/bibledit folder. Rename the bibledit-cloud newly created by the install program as something else. I used the mc program to do this. (Use F6 in the mc interface to rename things, if the console for the new server allows for the fkeys to be active. On Digital Ocean, the fkeys work in mc, but for the Indonesian server they did not. However there are other ways to navigate in mc without using fkeys.) ● Use Filezilla to upload your most recent bbtwhatever-you-named-it.tar.gz to the new server’s /var/bibledit folder. ● Unarchive that folder with the command: tar -zxvf bbtwhatever-you-named-it.tar.gz The un-archived folder created will be named bibledit-cloud. ● Important: You will need to change the file attributes for the whole bibledit-cloud folder. Change the Owner to bibledit, and change the Group to bibledit for the whole folder. The command for the folder name itself is chown bibledit:bibledit bibledit-cloud (If that command is wrong, it is because I actually did that step with mc.) After doing that, cd (change directory) into the bibledit-cloud folder itself with the command: cd bibledit-cloud Then execute the command chown -R bibledit:bibledit * Don’t forget the asterisk! This command will recursively change all the files and folders in the bibledit-cloud to have bibledit as the Owner and Group. Having done that, you should be able to log into your new server using the IP address or whatever domain name you have registered for it. All of your users and data should be intact. You can delete that original renamed bibledit-cloud folder from the installation that is just taking up space in the /var/bibledit folder.


0 comments
Sign in to join the conversation.