mirror of
https://github.com/coder/code-server.git
synced 2026-05-13 07:47:26 +02:00
Adds dev container and docs (#1499)
This commit is contained in:
49
ci/dev-image/exec.sh
Executable file
49
ci/dev-image/exec.sh
Executable file
@@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env bash
|
||||
# exec.sh opens an interactive bash session inside of a docker container
|
||||
# for improved isolation during development
|
||||
# if the container exists it is restarted if necessary, then reused
|
||||
|
||||
set -euo pipefail
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
# Ensure submodules are cloned and up to date.
|
||||
git submodule update --init
|
||||
|
||||
container_name=code-server-dev
|
||||
|
||||
enter() {
|
||||
echo "--- Entering $container_name"
|
||||
docker exec -it $container_id /bin/bash
|
||||
}
|
||||
|
||||
run() {
|
||||
echo "--- Spawning $container_name"
|
||||
container_id=$(docker run \
|
||||
-it \
|
||||
--name $container_name \
|
||||
"-v=$PWD:/code-server" \
|
||||
"-w=/code-server" \
|
||||
"-p=127.0.0.1:8080:8080" \
|
||||
$([[ -t 0 ]] && echo -it || true) \
|
||||
$container_name)
|
||||
}
|
||||
|
||||
build() {
|
||||
echo "--- Building $container_name"
|
||||
cd ../../
|
||||
docker build -t $container_name -f ./ci/dev-image/Dockerfile . > /dev/null
|
||||
}
|
||||
|
||||
container_id=$(docker container inspect --format="{{.Id}}" $container_name 2> /dev/null) || true
|
||||
|
||||
if [ "$container_id" != "" ]; then
|
||||
echo "-- Starting container"
|
||||
docker start $container_id > /dev/null
|
||||
|
||||
enter
|
||||
exit 0
|
||||
fi
|
||||
|
||||
build
|
||||
run
|
||||
enter
|
||||
Reference in New Issue
Block a user