Merge pull request #9 into master

eca6faa markdown: update default paths (environment, bind-mounts) (Aaron Fiore)
This commit was merged in pull request #9.
This commit is contained in:
2026-02-18 14:58:39 -08:00
2 changed files with 29 additions and 37 deletions

View File

@@ -53,25 +53,17 @@ docker-finance *should* work out-of-the-box on any modern Linux system. For exam
- A terminal multiplexer like [tmux](https://github.com/tmux/tmux/wiki) or [screen](https://www.gnu.org/software/screen/)
- A terminal file manager like [mc](https://midnight-commander.org/) (Midnight Commander)
3. Prepare your repository:
3. Prepare your base path and repository:
Before proceeding, change your directory to a *persistent* path that you'll likely keep; as your client (host) shell environment will be aliased/sourced to the path you choose.
Before proceeding, change your directory to a *persistent base path* that you intend to keep; as this will be the default base path for all data going forward.
NOTE: you *can* change the default base path later during [Client Generation](#client-generation).
```bash
# NOTE: ./docker-finance will be the default parent directory to house all data
if hash git &>/dev/null; then
if [ -d docker-finance ]; then
if pushd docker-finance &>/dev/null; then
if ! git pull --tags; then
echo "FATAL: docker-finance repo not pulled" >&2
fi
popd 1>/dev/null
else
echo "FATAL: docker-finance repo not found" >&2
fi
else
if ! git clone https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance; then
if ! git clone https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance docker-finance/repo; then
echo "FATAL: docker-finance repo not cloned" >&2
fi
fi
else
echo "FATAL: git not found" >&2
@@ -80,7 +72,7 @@ docker-finance *should* work out-of-the-box on any modern Linux system. For exam
4. Verify your repository (recommended):
```bash
if pushd docker-finance/ 1>/dev/null; then
if pushd docker-finance/repo 1>/dev/null; then
gpg --keyserver hkp://keyserver.ubuntu.com --recv-key 518A22F85BEFD32BCC99C48603F90C4F35E0213E \
&& git verify-commit $(git log -n1 --pretty=format:"%H") \
&& echo -e "\nSUCCESS: now confirm matching key = 518A22F85BEFD32BCC99C48603F90C4F35E0213E" \
@@ -94,7 +86,7 @@ docker-finance *should* work out-of-the-box on any modern Linux system. For exam
Install convenience aliases and command completion to your shell environment (see [install.bash](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/install.bash) for details):
```bash
./docker-finance/client/install.bash && source ~/.bashrc
./docker-finance/repo/client/install.bash && source ~/.bashrc
```
> - The `dfi` alias of `docker-finance` is the recommended alias to use for for all client/container operations
> - After your first image is built (step 7), you can use commandline completion for all `dfi` images and commands
@@ -221,7 +213,7 @@ The client (host) configuration file:
- client/container configurations can be stored on shared NFS/CIFS or related network storage (with applicable user permissions)
- allows for customizable locations of *all* container data on any mountable filesystem (as a replacement for Docker Volumes)
- consists solely of variables in the format `DOCKER_FINANCE_VARIABLE=value` and is used by both Docker and docker-finance
- default template variables can be found in [gen.bash](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/docker-finance.d/client/env/gen.bash), as described below
- default template variables can be found in [gen.bash](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/conf.d/client/env/gen.bash), as described below
After `gen` is complete, you can edit this file with the client (host) command: `edit type=env` (see [Client (Host) Command Format](How-do-I-use-it.md#client-host-command-format)).
@@ -230,14 +222,14 @@ After `gen` is complete, you can edit this file with the client (host) command:
Client (host) configuration path. Parent directory for client configuration files.
- Example: `DOCKER_FINANCE_CLIENT_CONF=/home/${USER}/.config/docker-finance.d`
- Example: `DOCKER_FINANCE_CLIENT_CONF=/home/${USER}/docker-finance/conf.d`
> DOCKER_FINANCE_CLIENT_FLOW
Client (host) finance-flow path. Parent directory for all profiles and end-user data.
Client (host) workflow path. Parent directory for all profiles and end-user data.
- Example: `DOCKER_FINANCE_CLIENT_FLOW=/net/nfs4/finance-flow`
- Example: `DOCKER_FINANCE_CLIENT_FLOW=/net/nfs4/docker-finance/flow`
> DOCKER_FINANCE_CLIENT_REPO
@@ -246,7 +238,7 @@ Client (host) path for the docker-finance code repository (from the host's persp
This parent directory is where the `client` and `container` directories are located.
- Example: `DOCKER_FINANCE_CLIENT_REPO=/net/nfs4/git/docker-finance`
- Example: `DOCKER_FINANCE_CLIENT_REPO=/net/nfs4/git/docker-finance/repo`
> DOCKER_FINANCE_CLIENT_SHARED
@@ -255,7 +247,7 @@ Client (host) path for the client/container shared directory.
The bind-mount is used exclusively for non-essential file sharing (custom scripts or any file you wish).
- Example: `DOCKER_FINANCE_CLIENT_SHARED=/mnt/share.d`
- Example: `DOCKER_FINANCE_CLIENT_SHARED=/mnt/docker-finance/share.d`
> DOCKER_FINANCE_CLIENT_PLUGINS
@@ -264,7 +256,7 @@ Client (host) path for the client/container shared *custom* plugins.
The bind-mount is used exclusively for user-added plugins not in the repository.
- Example: `DOCKER_FINANCE_CLIENT_PLUGINS=/home/${USER}/Development/dfi_custom-plugins`
- Example: `DOCKER_FINANCE_CLIENT_PLUGINS=/home/${USER}/Development/docker-finance/custom-plugins`
> DOCKER_FINANCE_CONTAINER_CMD
@@ -280,7 +272,7 @@ Default: `finance.bash` (internally aliased to `finance` and `dfi`)
The container's configuration path (bind-mounted to client's (host's) configuration path).
- Example: `DOCKER_FINANCE_CONTAINER_CONF=/home/${USER}/.config/docker-finance.d`
- Example: `DOCKER_FINANCE_CONTAINER_CONF=/home/${USER}/docker-finance/conf.d`
> DOCKER_FINANCE_CONTAINER_EDITOR
@@ -292,11 +284,11 @@ The container's default text editor.
> DOCKER_FINANCE_CONTAINER_FLOW
The container's finance-flow path from the container's perspective.
The container's workflow path from the container's perspective.
This path is bind-mounted to the client's (host's) finance-flow path.
This path is bind-mounted to the client's (host's) flow path.
- Example: `DOCKER_FINANCE_CONTAINER_FLOW=/home/${USER}/finance-flow`
- Example: `DOCKER_FINANCE_CONTAINER_FLOW=/home/${USER}/docker-finance/flow`
> DOCKER_FINANCE_CONTAINER_REPO
@@ -305,14 +297,14 @@ The container's docker-finance code repository path (as viewed from the containe
This path is bind-mounted to the client's (host's) `docker-finance/container` path.
- Example: `DOCKER_FINANCE_CONTAINER_REPO=/home/${USER}/docker-finance`
- Example: `DOCKER_FINANCE_CONTAINER_REPO=/home/${USER}/docker-finance/repo`
> DOCKER_FINANCE_CONTAINER_SHARED
The container's `share.d` path, bind-mounted to client's (host's) `share.d` path.
- Example: `DOCKER_FINANCE_CONTAINER_FLOW=/home/${USER}/share.d`
- Example: `DOCKER_FINANCE_CONTAINER_FLOW=/home/${USER}/docker-finance/share.d`
> DOCKER_FINANCE_CONTAINER_PLUGINS
@@ -321,7 +313,7 @@ The client's custom plugin path (as viewed from the container).
This path is bind-mounted to the client's (host's) `${DOCKER_FINANCE_CLIENT_PLUGINS}/container` path.
- Example: `DOCKER_FINANCE_CONTAINER_PLUGINS=/home/${USER}/plugins`
- Example: `DOCKER_FINANCE_CONTAINER_PLUGINS=/home/${USER}/docker-finance/plugins`
> DOCKER_FINANCE_CPUS
@@ -393,7 +385,7 @@ The client (host) custom Dockerfile:
- allows you to append any Dockerfile command to a generated build
- is located in the `${DOCKER_FINANCE_CLIENT_CONF}/client/Dockerfiles/` directory
- format consists of `username@hostname` where `username` is your host username and `hostname` is your machine's hostname
- default generated templates can be found [here](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/docker-finance.d/client/Dockerfiles)
- default generated templates can be found [here](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/conf.d/client/Dockerfiles)
After `gen` is complete, you can edit this file with the client (host) command: `edit type=build` (see [Client (Host) Command Format](How-do-I-use-it.md#client-host-command-format)).
@@ -409,7 +401,7 @@ The client/container shell script (Superscript) is a bind-mounted (by directory)
See the in-file comments for further documentation:
- [superscript.bash.in](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/docker-finance.d/container/shell/superscript.bash.in)
- [superscript.bash.in](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/conf.d/container/shell/superscript.bash.in)
After `gen` is complete, you can edit this file with the client (host) command: `edit type=shell` (see [Client (Host) Command Format](How-do-I-use-it.md#client-host-command-format)).
@@ -427,7 +419,7 @@ By default, this file will contain user aliases for all container commands. Thes
See the in-file comments for further documentation:
- [subscript.bash.in](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/docker-finance.d/container/shell/subscript.bash.in)
- [subscript.bash.in](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/conf.d/container/shell/subscript.bash.in)
After `gen` is complete, from within the container, you can edit this file with: `dfi profile/subprofile edit type=shell` (see [Container Command Format](How-do-I-use-it.md#container-command-format)).
@@ -437,7 +429,7 @@ The source of all remote API fetching configurations (exchanges, blockchains, ma
See the in-file comments for further documentation:
- [fetch.yaml.in](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/docker-finance.d/container/fetch/fetch.yaml.in)
- [fetch.yaml.in](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/conf.d/container/fetch/fetch.yaml.in)
After `gen` is complete, from within the container, you can edit this file with: `dfi profile/subprofile edit type=fetch` (see [Container Command Format](How-do-I-use-it.md#container-command-format)).
@@ -447,7 +439,7 @@ The source of all custom metadata information (typically used to store cryptocur
See the in-file comments for further documentation:
- [meta.csv.in](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/docker-finance.d/container/meta/meta.csv.in)
- [meta.csv.in](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/conf.d/container/meta/meta.csv.in)
After `gen` is complete, from within the container, you can edit this file with: `dfi profile/subprofile edit type=meta` (see [Container Command Format](How-do-I-use-it.md#container-command-format)).

View File

@@ -141,7 +141,7 @@ Peeking inside `${DOCKER_FINANCE_CONTAINER_FLOW}/profiles/profile/subprofile`, y
- `all-years.journal` and `directives.journal`
- These top-level journals are generated by `hledger-flow`. Ignore these and use the container `edit` command for all journal editing.
- `docker-finance.d`
- `conf.d`
- Location of all docker-finance configuration files (see `edit help` for details).
- `import`
@@ -171,7 +171,7 @@ See the container `times help` command for details.
#### Flow Layout
Your `finance-flow` directory will contain a symlink called `src` which links to code that processes your data. **Do not delete this symlink**.
Your `flow` directory will contain a symlink called `src` which links to code that processes your data. **Do not delete this symlink**.
##### *Prices*