Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
ac73226
podman kube play commands to launch the environment
cooktheryan Nov 13, 2024
02a2c15
Updated readme with the tutorial and relevant documentation links
vishnoianil Nov 11, 2024
7bf42f2
Align the local dev login page with the Oauth login page
nerdalert Nov 1, 2024
786ecfd
Add the github Oauth option to the dev login page
nerdalert Nov 7, 2024
7cb4e41
Bug: use unique keys in in the help dropdown
nerdalert Nov 13, 2024
c9a2ccf
Migrate to Patternfly v6
nerdalert Nov 13, 2024
6c11468
implement clearer tagging system
Gregory-Pereira Nov 12, 2024
5f287c6
turning on renovate
Gregory-Pereira Nov 12, 2024
7b26073
keep merged prs
Gregory-Pereira Nov 12, 2024
98f1c20
combining tags and use combined tags
Gregory-Pereira Nov 12, 2024
c9a7a7e
reimplement tag updates
Gregory-Pereira Nov 15, 2024
2b4ac44
actionlint work
Gregory-Pereira Nov 15, 2024
6985bc1
remove combining tags steps and restructure multiple tags
Gregory-Pereira Nov 17, 2024
f17f59e
removing -S tack from commit, signing requires ssh key
Gregory-Pereira Nov 17, 2024
bf6a217
removing force push and push through token
Gregory-Pereira Nov 18, 2024
705a407
give permissions for the bot to write to code
Gregory-Pereira Nov 18, 2024
2250e3a
just try contents write first
Gregory-Pereira Nov 18, 2024
2d29541
deprecate compose
cooktheryan Nov 19, 2024
0d04f7c
Bump DavidAnson/markdownlint-cli2-action
dependabot[bot] Nov 18, 2024
045f363
cleanup of readme
cooktheryan Nov 19, 2024
6be1a25
Merge branch 'main' into podman-kube-play
cooktheryan Nov 19, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 0 additions & 38 deletions deploy/compose/ui-compose.yml

This file was deleted.

71 changes: 71 additions & 0 deletions deploy/podman/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Podman deployment

To help support knowledge and skill additions as well as the capabilities to chat with a deployed model, the following Podman files have been included to be used with `podman kube play`.

## Secret

A secret is required to personalize the Instructlab UI.

Two options exist to generate the secret, either using `kubectl` or filling in values in the `secret.yaml` provided.

**NOTE:** It is not required to fill in every field. Double quotes `""` can be used for values that are not used.

### Kubectl secret creation

Using `kubectl`, we will use the `--dry-run -o yaml` flags to generate the secret for us.

```bash
kubectl create secret generic ui-env \
--from-literal=IL_UI_ADMIN_USERNAME=admin \
--from-literal=IL_UI_ADMIN_PASSWORD=password \
--from-literal=OAUTH_GITHUB_ID="" \
--from-literal=OAUTH_GITHUB_SECRET="" \
--from-literal=NEXTAUTH_SECRET=your_super_secretdom_string \
--from-literal=NEXTAUTH_URL=http://localhost:3000 \
--from-literal=IL_GRANITE_API="" \
--from-literal=IL_GRANITE_MODEL_NAME="" \
--from-literal=IL_MERLINITE_API="" \
--from-literal=IL_MERLINITE_MODEL_NAME="" \
--from-literal=IL_UI_DEPLOYMENT=dev \
--from-literal=GITHUB_TOKEN="" \
--from-literal=TAXONOMY_DOCUMENTS_REPO=github.com/instructlab-public/taxonomy-knowledge-docs \
--from-literal=NEXT_PUBLIC_AUTHENTICATION_ORG="" \
--from-literal=NEXT_PUBLIC_TAXONOMY_REPO_OWNER="" \
--from-literal=NEXT_PUBLIC_TAXONOMY_REPO="" \
--from-literal=NEXT_PUBLIC_EXPERIMENTAL_FEATURES="false" \
--from-literal=NEXT_PUBLIC_BASE_CLONE_DIRECTORY="" \
--from-literal=NEXT_PUBLIC_LOCAL_REPO_PATH="" \
--dry-run=client -o yaml > secret.yaml
```

### Manual providing values

A file named `secret.yaml` exists to allow for the user to input their values in place. These values must be `base64` encoded.

Here is an example on how to `base64` encode a value.

```bash
echo "password" | base64
```

Using the above fill in the values as it relates to the environment.

## Deploy the secret

Now that the `secret.yaml` has been generated use `podman kube play` to load the secret.

```bash
podman kube play secret.yaml
```

## Launching the UI

Now with the secret in place use `podman kube play` to launch the containers.

```bash
podman kube play instructlab-ui.yaml
```

## Accessing the UI

The Instructlab UI should now be accessible from `http://localhost:3000`
143 changes: 143 additions & 0 deletions deploy/podman/instructlab-ui.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: pathservice
spec:
replicas: 1
selector:
matchLabels:
app: pathservice
template:
metadata:
labels:
app: pathservice
spec:
containers:
- name: pathservice
image: ghcr.io/instructlab/ui/pathservice:main
resources:
limits:
cpu: "100m"
memory: "200Mi"
requests:
cpu: "100m"
memory: "200Mi"
ports:
- containerPort: 4000
hostPort: 4000
imagePullPolicy: Always
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: ui
spec:
replicas: 1
selector:
matchLabels:
app: ui
template:
metadata:
labels:
app: ui
spec:
containers:
- name: ui
image: ghcr.io/instructlab/ui/ui:main
resources:
limits:
cpu: "100m"
memory: "200Mi"
requests:
cpu: "100m"
memory: "200Mi"
env:
- name: NEXTAUTH_SECRET
valueFrom:
secretKeyRef:
name: ui-env
key: NEXTAUTH_SECRET
- name: NEXTAUTH_URL
valueFrom:
secretKeyRef:
name: ui-env
key: NEXTAUTH_URL
- name: IL_UI_ADMIN_PASSWORD
valueFrom:
secretKeyRef:
name: ui-env
key: IL_UI_ADMIN_PASSWORD
- name: IL_UI_DEPLOYMENT
valueFrom:
secretKeyRef:
name: ui-env
key: IL_UI_DEPLOYMENT
- name: IL_UI_ADMIN_USERNAME
valueFrom:
secretKeyRef:
name: ui-env
key: IL_UI_ADMIN_USERNAME
- name: OAUTH_GITHUB_ID
valueFrom:
secretKeyRef:
name: ui-env
key: OAUTH_GITHUB_ID
- name: OAUTH_GITHUB_SECRET
valueFrom:
secretKeyRef:
name: ui-env
key: OAUTH_GITHUB_SECRET
- name: IL_GRANITE_API
valueFrom:
secretKeyRef:
name: ui-env
key: IL_GRANITE_API
- name: IL_GRANITE_MODEL_NAME
valueFrom:
secretKeyRef:
name: ui-env
key: IL_GRANITE_MODEL_NAME
- name: IL_MERLINITE_API
valueFrom:
secretKeyRef:
name: ui-env
key: IL_MERLINITE_API
- name: IL_MERLINITE_MODEL_NAME
valueFrom:
secretKeyRef:
name: ui-env
key: IL_MERLINITE_MODEL_NAME
- name: GITHUB_TOKEN
valueFrom:
secretKeyRef:
name: ui-env
key: GITHUB_TOKEN
- name: TAXONOMY_DOCUMENTS_REPO
valueFrom:
secretKeyRef:
name: ui-env
key: TAXONOMY_DOCUMENTS_REPO
- name: NEXT_PUBLIC_AUTHENTICATION_ORG
valueFrom:
secretKeyRef:
name: ui-env
key: NEXT_PUBLIC_AUTHENTICATION_ORG
- name: NEXT_PUBLIC_TAXONOMY_REPO_OWNER
valueFrom:
secretKeyRef:
name: ui-env
key: NEXT_PUBLIC_TAXONOMY_REPO_OWNER
- name: NEXT_PUBLIC_TAXONOMY_REPO
valueFrom:
secretKeyRef:
name: ui-env
key: NEXT_PUBLIC_TAXONOMY_REPO
- name: NEXT_PUBLIC_EXPERIMENTAL_FEATURES
valueFrom:
secretKeyRef:
name: ui-env
key: NEXT_PUBLIC_EXPERIMENTAL_FEATURES
ports:
- containerPort: 3000
hostPort: 3000
imagePullPolicy: Always
25 changes: 25 additions & 0 deletions deploy/podman/secret.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
apiVersion: v1
data:
GITHUB_TOKEN: ""
IL_GRANITE_API: ""
IL_GRANITE_MODEL_NAME: ""
IL_MERLINITE_API: ""
IL_MERLINITE_MODEL_NAME: ""
IL_UI_ADMIN_PASSWORD: ""
IL_UI_ADMIN_USERNAME: ""
IL_UI_DEPLOYMENT: ""
NEXT_PUBLIC_AUTHENTICATION_ORG: ""
NEXT_PUBLIC_BASE_CLONE_DIRECTORY: ""
NEXT_PUBLIC_EXPERIMENTAL_FEATURES: ""
NEXT_PUBLIC_LOCAL_REPO_PATH: ""
NEXT_PUBLIC_TAXONOMY_REPO: ""
NEXT_PUBLIC_TAXONOMY_REPO_OWNER: ""
NEXTAUTH_SECRET: ""
NEXTAUTH_URL: ""
OAUTH_GITHUB_ID: ""
OAUTH_GITHUB_SECRET: ""
TAXONOMY_DOCUMENTS_REPO: ""
kind: Secret
metadata:
creationTimestamp: null
name: ui-env