Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/EnterpriseDB/postgres-deployment
EDB Postgres Deployment
https://github.com/EnterpriseDB/postgres-deployment
Last synced: 7 days ago
JSON representation
EDB Postgres Deployment
- Host: GitHub
- URL: https://github.com/EnterpriseDB/postgres-deployment
- Owner: EnterpriseDB
- License: other
- Created: 2020-02-17T14:47:50.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-04-28T17:04:06.000Z (over 1 year ago)
- Last Synced: 2024-10-31T17:17:50.547Z (12 days ago)
- Language: Python
- Size: 974 MB
- Stars: 66
- Watchers: 18
- Forks: 40
- Open Issues: 5
-
Metadata Files:
- Readme: README-WIN.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Additional Windows Instructions
It is recommended to install `edb-deployment` in an WSL (Windows Subsystem for
Linux) environment. It can be run in other virtual environments running Linux,
but there are dependencies that do not work in a Cygwin or pure Windows
environment.Please be sure to review each section as each may or may not apply depending on
your usage.## VirtualBox Installation
Download VirtualBox and the Extension Pack for Windows:
https://www.virtualbox.org/wiki/Downloads## WSL Installation
Complete installation instructions can be found in Microsoft's documentation:
https://docs.microsoft.com/en-us/windows/wsl/installOpen an administrator command prompt and run the install command:
```shell
wsl --install
```The default Ubuntu distribution will work for setting up `edb-deployment`.
## Vagrant Installation
Vagrant is only required if VirtualBox is going to be used locally on your
system. It is not required for use with any cloud vendor.Vagrant does not need to be installed in Windows, but needs to be installed in
the WSL environment. Complete installation notes can be found in Vagrant's
documentation: https://www.vagrantup.com/docs/other/wslTwo environment variables needs to set in order for Vagrant to access the host
Windows file system, and to be able to VirtualBox.```shell
export VAGRANT_WSL_ENABLE_WINDOWS_ACCESS="1"
export PATH="$PATH:/mnt/c/Program Files/Oracle/VirtualBox"
```The following instructions are taken from Vagrant's documentation for
installing in Ubuntu.```shell
wget -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpgecho "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install vagrant
```Install additional plugins from the shell to enable shared folders and
workaround a bug to enable the `vagrant ssh` command on Windows:```shell
vagrant plugin install vagrant-vbguest
vagrant plugin install virtualbox_WSL2
```Vagrant storing its insecure SSH key on an NTFS file system causes some
additional issues with various Vagrant commands that try to ssh with the
insecure private key. Create the file `/etc/wsl.conf` in the WSL environment
with the following contents:```
# Enable extra metadata options by default
[automount]
enabled = true
root = /mnt/
options = "metadata,umask=77,fmask=11"
mountFsTab = false
```Then restart WSL with the following command in an elevated Powershell:
```shell
Restart-Service -Name "LxssManager"
```SSH key management in WSL can be done with `keychain`. Here is an example of
what to add to `.bashrc`:```shell
/usr/bin/keychain -q --nogui $HOME/.vagrant.d/insecure_private_key
/usr/bin/keychain -q --nogui $HOME/.ssh/private_key2
source $HOME/.keychain/$(hostname)-sh
```## Manual `edb-deployment` Setup
`edb-deployment` stores its files in `~/.edb-deployment` but the file system
used for WSL is not compatible with Vagrant.Move or create `~/.edb-deployment`, depending on whether `edb-deployment` has
created the directory already, directory to `/mnt/c/` and create a symlink.
Anywhere on `/mnt/c` should be acceptable, but here is a specific example to
move the directory and create a symlink.```
mv ~/.edb-deployment /mnt/c
ln -s /mnt/c/.edb-deployment ~/.edb-deployment
```