Open7

docker + streamlit + GitHub

Teru roomTeru room

Apple M2 Pro / 16GB / macOS 14.0

open -a Docker
mkdir streamlit;cd streamlit
code .
Dockerfile
# app/Dockerfile

FROM python:3.11-slim

WORKDIR /app

RUN apt-get update && apt-get install -y \
    build-essential \
    curl \
    software-properties-common \
    git \
    && rm -rf /var/lib/apt/lists/*

RUN git clone https://github.com/teruroom/streamlit.git .

RUN pip3 install -r requirements.txt

EXPOSE 8501

HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health

ENTRYPOINT ["streamlit", "run", "app/sample1.py", "--server.port=8501", "--server.address=0.0.0.0"]
app/sample1.py
# https://share.streamlit.io/
import streamlit as st
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

def 折れ線グラフを表示する():
    st.title('折れ線グラフ')
    # データフレームを作成
    df = pd.DataFrame(
        np.random.randn(30, 2),
        columns=['a', 'b']
    )

    # 折れ線グラフを表示
    st.line_chart(df)

    # データフレームを表示
    st.write(df)

def 棒グラフを表示する():
    st.title('棒グラフ')
    # データフレームを作成
    df = pd.DataFrame(
        np.random.randn(30, 2),
        columns=['a', 'b']
    )

    # 棒グラフを表示
    st.bar_chart(df)

def ヒストグラムを表示する():
    st.title('ヒストグラム')
    # 生成数を設定
    n = 500

    # データフレームを作成
    df = pd.DataFrame(
        np.random.randn(int(n), 3),
        columns=['a', 'b', 'c']
    )

    # ヒストグラムを作成
    fig, ax = plt.subplots()
    ax.hist(df)
    ax.set_facecolor("black")
    st.pyplot(fig)

def main():
    折れ線グラフを表示する()
    棒グラフを表示する()
    ヒストグラムを表示する()

main()
Teru roomTeru room
zsh
git --version
git config --global user.name "teruroom"
git config --global user.email "xxxxx@xxxxx.xxxxx"
git config user.name
git config user.email
zsh
cd ~
mkdir .ssh
cd .ssh
ssh-keygen -t ed25519 -C "xxxxx@xxxxx.xxxxx"
  • Enter file in which to save the key (/Users/sharl/.ssh/id_ed25519): github
  • Enter passphrase (empty for no passphrase):
  • Enter same passphrase again:
zsh
ls
pwd
touch config
ls
vim config
config
Host github
    Hostname github.com
    User git
    IdentityFile ~/.ssh/github
Teru roomTeru room
zsh
ssh -T github
  • Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Teru roomTeru room
zsh
cat known_hosts
known_hosts
github.com ssh-ed25519 xxxxxxxxxxxxxxx
zsh
pbcopy < ~/.ssh/github
  • GitHubにサインイン
  • プロフィールアイコンから[Settings]を選択
  • サイドメニューの[SSH and GPG keys]を選択し、[new SSH key]ボタンをクリック
  • [Title]:macOS SSH Key
  • Key:control+p
key
-----BEGIN OPENSSH PRIVATE KEY-----
ffffffffffffffffffffffffffxxxxxxxxxxxjjjjjjjjjjddddddddddddddddiiiiiiiiiiiiiiiiiiitttttttttttttAAAAAAAA
ffffffffffffffffffffffffffxxxxxxxxxxxjjjjjjjjjjddddddddddddddddiiiiiiiiiiiiiiiiiiitttttttttttttAAAAAAAA
ffffffffffffffffffffffffffxxxxxxxxxxxjjjjjjjjjjddddddddddddddddiiiiiiiiiiiiiiiiiiitttttttttttttAAAAAAAA
ffffffffffffffffffffffffffxxxxxxxxxxxjjjjjjjjjjddddddddddddddddiiiiiiiiiiiiiiiiiiitttttttttttttAAAAAAAA
ffffffffffffffffffffffffffxxxxxxxxxxxjjjjjjjjjjddddddddddddddddiiiiiiiiiiiiiiiiiiitttttttttttttAAAAAAAA
ffffffffffffffffffffffffffxxxxxxxxxxxjjjjjjjjjjddddddddddddddddiiiiiiiiiiiiiiiiiiitttttttttttttAAAAAAAA
ffffffffffffffffffffffffffxxxxxxxxxxxjjjjjjjjjjddddddddddddddddiiiiiiiiiiiiiiiiiiitttttttttttttAAAAAAAA
-----END OPENSSH PRIVATE KEY-----
Teru roomTeru room
zsh
git clone https://github.com/teruroom/streamlit.git
tree
tree
.
├── app
│   ├── Dockerfile
│   └── sample1.py
└── requirements.txt

2 directories, 3 files
Teru roomTeru room

GitHubのアクセストークンを調べる方法

  1. GitHubにログインし、右上のプロフィール写真をクリックします。
  2. ドロップダウンリストから「Settings」を選択します。
  3. プロフィール編集ページが開きます。サイドメニューの一番下にある「Developer settings」を選択します。
  4. 開発者用の認証設定ページが開きます。サイドメニューから「Personal access tokens」を選択します。
  5. 「Generate new token」を選択し、必要事項を入力していきます。トークンの説明を入力し、「repo」のみのチェックで充分です。
  6. 入力が完了すると「Generate token」をクリックします。アクセストークンが発行されました。トークンは作成時にしか見えないため、忘れた場合は再取得する必要があります。

以上の手順で、自身のGitHubアカウントのアクセストークンを調べることができます。¹²

(1) . https://bing.com/search?q=GitHub+アクセストークン+調べ方.
(2) GitHub – アクセストークンの作成・取得方法とgit操作での使い方 .... https://howpon.com/5308.
(3) Organization での個人用アクセス トークンの確認と取り消し .... https://docs.github.com/ja/organizations/managing-programmatic-access-to-your-organization/reviewing-and-revoking-personal-access-tokens-in-your-organization?apiVersion=2022-11-28.
(4) GitHub|アクセストークンの取得方法 - KENTECH. https://miconooffice.com/個人アクセストークンの設定/.
(5) undefined. https://rfs.jp/server/git/github/personal_access_tokens.html.
(6) undefined. https://qiita.com/seigot/items/605661666f074547a89e.
(7) undefined. https://github.com.

zsh
git remote set-url origin https://AccessTokenKey@github.com/teruroom/streamlit.git
git remote -v
zsh
git add .   
git commit -m "更新テスト"
git push -u origin main 
結果
origin	https://AccessTokenKey@github.com/teruroom/streamlit.git (fetch)
origin	https://AccessTokenKey@github.com/teruroom/streamlit.git (push)