wip
ci/woodpecker/push/renovate Pipeline was successful Details
ci/woodpecker/push/test Pipeline was successful Details
ci/woodpecker/push/next Pipeline was successful Details
ci/woodpecker/push/deploy Pipeline was successful Details

This commit is contained in:
OCram85 2022-11-22 16:27:14 +01:00
parent c06d212379
commit f6e159f625
1 changed files with 91 additions and 7 deletions

View File

@ -17,18 +17,86 @@
</h1>
<p align="center">
Code-Server container optimized for daily use.
Code-Server container optimized for daily use.
</p>
<p align="center">
<a href="https://ci.ocram85.com/CodeServer/arkanumg">
<a href="https://ci.ocram85.com/CodeServer/arkanum">
<img src="https://ci.ocram85.com/api/badges/CodeServer/arkanum/status.svg" alt="Master Branch Build Status">
</a>
</p>
## :book: General
## 🤖 Quickstart
The container is based on the latest `linuxserver/code-server` image.
### ⚡ Get the image
You can download the image from the gitea embedded container registry: `gitea.ocram85.com/codeserver/arkanum` with these tags:
- `latest` - Is based on the lasted master banch commit.
- `next` - Is a test build based on the pull request
- `1`, `0.1`, `0.1.0` - tag based version. See [packages page](https://gitea.ocram85.com/CodeServer/-/packages/container/arkanum/latest) for available tags.
### Docker Swarm Stack
This example shows how to run arkanum as additional swarm stack.
This examples requires
- an already running docker swarm cluster
- a running traefik instance handling the http and https routes
- also configured to watch for services in the `traefik-public` overlay network.
> 💡 NOTE: For advanced config with available environment variables see [linuxserver/docker-code-server](https://github.com/linuxserver/docker-code-server) help.
```yaml
version: "3.8"
services:
arkanum:
image: gitea.ocram85.com/codeserver/arkanum:0.0.1
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
- PASSWORD=foo #optional
#- HASHED_PASSWORD= #optional
- SUDO_PASSWORD=foobar #optional
#- SUDO_PASSWORD_HASH= #optional
#- PROXY_DOMAIN=code-server.my.domain #optional
- DEFAULT_WORKSPACE=/config/workspace
deploy:
replicas: 1
labels:
- "traefik.enable=true"
- "traefik.docker.network=traefik-public"
- "traefik.http.routers.arkanum.rule=Host(`vscode.mydomain.com`)"
- "traefik.http.routers.arkanum.tls.certresolver=myresolver"
- "traefik.http.services.arkanum-srv.loadbalancer.server.port=8443"
volumes:
# store workspace and use config in volume.
- codedata:/config
# no need to expose the port. traefik acts as reverse proxy and handles the https access.
#ports:
# - 8443:8443
restart: unless-stopped
networks:
- arkanum-sphere
- traefik-public
volumes:
codedata:
networks:
arkanum-sphere:
traefik-public:
external: true
```
### Docker-Compose
### Docker CLI
## :book: Content
### 🚀 Starship prompt
@ -43,6 +111,7 @@ Adds default git system config file with:
- enabled plain credential store for remote.
- added git log helper `lg1` + `lg2`.
- enabled bash completion for git command in integrated bash terminal.
> 💡 See [gitconfig-system](./gitconfig-system) for details.
### 🧙 Added `arkanum` helper script
@ -83,13 +152,13 @@ This user setting defines the following stuff:
- Use compact menu bar to avoid users with multiple menu bars.
- Use *One Dark Pro Darker* theme
- Use *vscode-icons* icon set
- Set 'FiraCode' as default font in editor.
- Set FiraCode as default font in editor.
- Tries to use alternate font names for FiraCode if its locally available.
- Sets 'FiraCode' mono variant in terminal to enable icons used by starshop prompt.
- Sets FiraCode mono variant in terminal to enable icons used by starship prompt.
- Enables font ligatures
- Enables *auto save* and *format on save*.
- Disables auto update for extension.
- Disables VScode telemetry
- Disables VSCode telemetry
- Disable confirm message for sync branches.
Additionally we install these extensions on container startup:
@ -98,6 +167,21 @@ Additionally we install these extensions on container startup:
- [vscode-icons](https://open-vsx.org/extension/vscode-icons-team/vscode-icons) icon set
- [Gitlens](https://open-vsx.org/extension/eamodio/gitlens)
## 💣 Know Issues
### Default extensions installation timing error
If the automatic installation of the default extension fails, you can always retry he installation with the
following command:
```bash
# restart the installation
arkanum --install-extensions
# Optional: reset the vscode user setting
arkanum --reset-codesetting
# Reload with command F1 + Developer: Reload Window
```
## 💳 Credits
Akranum is based on the following projects and wouldn't be possible without: