Init and first post.
This commit is contained in:
commit
e1b9f790e4
|
|
@ -0,0 +1,2 @@
|
||||||
|
/.quarto/
|
||||||
|
_site/
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
project:
|
||||||
|
type: website
|
||||||
|
|
||||||
|
website:
|
||||||
|
title: "Ramblings"
|
||||||
|
navbar:
|
||||||
|
right:
|
||||||
|
- about.qmd
|
||||||
|
format:
|
||||||
|
html:
|
||||||
|
theme: litera
|
||||||
|
css: styles.css
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
title: "About"
|
||||||
|
---
|
||||||
|
|
||||||
|
"Ramblings" is a regularly updated collection
|
||||||
|
of reviews, tips and tricks, and commentary on technical
|
||||||
|
and non technical content from around the web.
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
---
|
||||||
|
title: ""
|
||||||
|
listing:
|
||||||
|
contents: posts
|
||||||
|
sort: "date desc"
|
||||||
|
type: default
|
||||||
|
categories: true
|
||||||
|
sort-ui: false
|
||||||
|
filter-ui: false
|
||||||
|
page-layout: full
|
||||||
|
title-block-banner: true
|
||||||
|
---
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
# options specified here will apply to all posts in this folder
|
||||||
|
|
||||||
|
# freeze computational output
|
||||||
|
# (see https://quarto.org/docs/projects/code-execution.html#freeze)
|
||||||
|
freeze: true
|
||||||
|
|
||||||
|
# Enable banner style title blocks
|
||||||
|
title-block-banner: false
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
---
|
||||||
|
title: "devcontainer"
|
||||||
|
author: "James"
|
||||||
|
date: "2022-12-28"
|
||||||
|
categories: [containers]
|
||||||
|
description: Notes on devcontainer work.
|
||||||
|
---
|
||||||
|
|
||||||
|
A few weeks I took a look a vscode's devcontainer standard.
|
||||||
|
It is a standard way of building and running a docker container for development
|
||||||
|
from a specially formatted json file.
|
||||||
|
|
||||||
|
Over the holiday I played around a little bit with it.
|
||||||
|
|
||||||
|
They have a node cli program that can build, launch, and attach to the container
|
||||||
|
from the json file without vscode hosted [here](https://github.com/devcontainers/cli).
|
||||||
|
|
||||||
|
For the most part the special json file defines all the stuff you would think it does
|
||||||
|
and works as I would have expected.
|
||||||
|
|
||||||
|
The coolest thing I saw with it is they have this concept of "features".
|
||||||
|
|
||||||
|
A lot of time with Dockerfiles there is a lot of repetition with the same code repeated
|
||||||
|
in multiple Dockerfiles for different images.
|
||||||
|
There's different ways to solve this I've seen.
|
||||||
|
|
||||||
|
My custom development container handler (`dev_container`) uses
|
||||||
|
[templates](https://github.com/jpace121/dev_contain_templates/blob/master/templates/base.Dockerfile.template),
|
||||||
|
for example.
|
||||||
|
|
||||||
|
Te vscode solution has this thing called a "feature".
|
||||||
|
They build a base image from a Dockerfile like normal, and then add listed
|
||||||
|
"features" on top of the original Dockerfile.
|
||||||
|
Each feature is basically a tar file with a well known named script that the build
|
||||||
|
thing runs that can modify the original image.
|
||||||
|
|
||||||
|
I was able to write my own "feature"
|
||||||
|
[here](https://github.com/jpace121/jpace121-devcontainer-features/blob/main/src/jpace121-devel/install.sh)
|
||||||
|
which adds my normal cli stuff (like `ag` and `emacs`) to an image pretty easily.
|
||||||
|
|
||||||
|
They provide a github action to publish the features as an OCI archive, so I got
|
||||||
|
that for free basically.
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
/* css styles */
|
||||||
Reference in New Issue