Select dev env

Here we do differ on what's needed/shared
This commit is contained in:
David Heinemeier Hansson
2024-06-11 22:56:40 +02:00
parent 9ff62a151e
commit 1e36b3baf4
3 changed files with 39 additions and 9 deletions

View File

@@ -9,7 +9,3 @@ DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
mkdir -p $DOCKER_CONFIG/cli-plugins
curl -sSL https://github.com/docker/compose/releases/download/v$DOCKER_COMPOSE_VERSION/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
sudo docker create --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mysql8 -e MYSQL_ROOT_PASSWORD= -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:8.4
sudo docker create --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7
sudo docker create --restart unless-stopped -p "127.0.0.1:5432:5432" --name=postgres16 -e POSTGRES_HOST_AUTH_METHOD=trust postgres:16

View File

@@ -5,8 +5,3 @@ wget -qO - https://mise.jdx.dev/gpg-key.pub | gpg --dearmor | sudo tee /etc/apt/
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.gpg arch=amd64] https://mise.jdx.dev/deb stable main" | sudo tee /etc/apt/sources.list.d/mise.list
sudo apt update
sudo apt install -y mise
# Install default languages
mise use --global ruby@3.3
mise use --global node@lts
mise use --global go@latest

39
install/select-dev-env.sh Normal file
View File

@@ -0,0 +1,39 @@
# Install default programming languages
languages=$(gum choose "Ruby" "Node.js" "Go" "Python" "Java" --no-limit --selected "Ruby","Node.js" --height 7 --header "Select programming languages")
for language in $languages; do
case $language in
Ruby)
mise use --global ruby@3.3
;;
Node.js)
mise use --global node@lts
;;
Go)
mise use --global go@latest
;;
Java)
mise use --global java@latest
;;
Python)
mise use --global python@latest
;;
esac
done
# Install default databases
dbs=$(gum choose "MySQL" "PostgreSQL" "Redis" --no-limit --selected "MySQL","Redis" --height 5 --header "Select databases (runs in Docker)")
for db in $dbs; do
case $db in
MySQL)
sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mysql8 -e MYSQL_ROOT_PASSWORD= -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:8.4
;;
PostgreSQL)
sudo docker run -d --restart unless-stopped -p "127.0.0.1:5432:5432" --name=postgres16 -e POSTGRES_HOST_AUTH_METHOD=trust postgres:16
;;
Redis)
sudo docker run -d --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7
;;
esac
done