コレステロール値を下げる薬のスタチンと組織の再生や修復に用いるナノサイズの構造体を一緒に使うと、視神経を再生・保護する能力が増すことを、米ピッツバーグ大学のグループがマウスの実験で明らかにした。
スタチンとナノ構造体で視神経を再生・保護、緑内障の治療に期待 米大が成果 | Science Portal - 科学技術の最新情報サイト「サイエンスポータル」
ヒトをはじめとした哺乳類では自然には起きないとされていた視神経の回復につながることを示す成果。将来的には外傷や緑内障などによる失明を防ぐ治療に期待できるという。
スタチンとナノ構造体で視神経を再生・保護、緑内障の治療に期待 米大が成果 | Science Portal - 科学技術の最新情報サイト「サイエンスポータル」
⇧ amazing...
GitHub Actionsをローカルで実行できるnektos/actとは
職場の方に教えてもらって、その存在を知ったので備忘録として。
公式の公開しているGitHubのREADMEによると、
Run your GitHub Actions locally
⇧ とあり、「GitHub Actions」の「ワークフロー」をローカル環境で実行できるらしい。
とりあえず、
act
depends on docker
(exactly Docker Engine API) to run workflows in containers.
⇧「Docker」の「コンテナ」環境で動作するらしいので、「Docker Engine」がインストール済みのLinux環境がMUSTな要件になるっぽい。
後発だとは思うのだけど、
⇧「GitHub」からも似たような機能が提供されてるみたい。
GitHub Actionsをローカルで実行できるnektos/actの仕組みを整理してみる
とりあえず、「nektos/act」を利用するための要件としては、
- Docker Engineが稼働している環境
ということになるようなので、基本的にはLinux環境を前提としていますと。
公式のドキュメントにシステムの概要図のようなものは無いので、あくまで推測になりますが、
みたいな感じになるのかなと。
「act(Runner)」の「Dockerイメージ」が、「nektos/act」をインストールした段階で同梱されてくるのかがよく分からないのだけど...
公式のドキュメントによると、
⇧「Default」で「Dockerイメージ」が用意されているみたいなのだが、「Default」以外を利用することも可能らしいようなのだが、
⇧「Dockerイメージ」をどこから取得するのかの説明が無い...
何やら、
⇧「Dockerイメージ」のリンクが「Docker Hub」を参照しているっぽいので、外部からネットワーク経由でインストールする形になるっぽい。
ということは、おそらく、一旦、「Dockerイメージ」をローカル環境に配置できれば、
⇧ ローカル環境に配置済みの「Dockerイメージ」を利用する形にできるってことなんかね?
デフォルトは、「Docker」の利用になるようなのだけど、
⇧「Docker Engine API」と互換性があるのであれば、別の「Container Engine」を利用することも可能らしい。
ChatGPTに質問した感じでは、
No | コンテナエンジン | Docker Engine API互換性 | ランタイム | 備考 | |
---|---|---|---|---|---|
高レイヤー | 低レイヤー | ||||
1 | Docker | 完全互換性あり | ✅ | ❌ | DockerはDocker Engine APIを完全に提供。標準的なコンテナ管理ツール。 |
2 | Podman | 高い互換性あり | ✅ | ❌ | PodmanはDocker Engine API互換のREST APIを提供。podman コマンドはDockerとほぼ同等。 |
3 | CRI-O | 限定的互換性あり | ❌ | ✅ | Kubernetes向けに設計され、Docker APIとの直接的な互換性はないが、コンテナの管理は可能。 |
4 | containerd | 部分的互換性あり | ❌ | ✅ | Docker Engine内部で使用。APIは提供しないが、docker コマンドとの互換性を持つ。 |
5 | Rancher RKE | 部分的互換性あり | ✅ | ❌ | RancherのKubernetes向けのエンジン。Docker APIを直接利用しないが、互換性を持つ機能がある。 |
6 | K3s | 部分的互換性あり | ✅ | ❌ | 軽量Kubernetesディストリビューション。containerd を使用し、Docker API互換の機能も一部サポート。 |
7 | LXC/LXD | 互換性なし | ❌ | ✅ | Docker Engine APIとは異なる、低レベルのコンテナ管理。API互換はなく、コンテナの実行は可能。 |
⇧ 上記のような回答が返ってきた。
「Container Engine」の定義が分からんのだが、「Container Runtime」は、
- high-level
- low-level
に分かれるらしく、
⇧ ChatGPTの回答では出て来なかった情報もあって、「Docker Engine API」との関係性がよく分からない...
GitHub Actionsをローカルで実行できるnektos/actを導入の前にArch Linuxの導入
ローカルのPC(Windows 10 Home)のCドライブの空き容量が心許ないのですが、「WSL 2(Windows Subsystem for Linux 2)」で試してみることにしようと思ったのですが、ただ、予想通りと言いますか、
⇧「nektos/act」の「Install」で紹介されている「Linux ディストリビューション」は「WSL 2(Windows Subsystem for Linux 2)」側では対応していない...
「WSL 2(Windows Subsystem for Linux 2)」で「Arch Linux」をインストール方法としては、
⇧「tar」からimportする方法になり、
⇧「archlinux-bootstrap-2024.12.01-x86_64.tar.zst」のようなファイルを元に、
⇧ 上記サイト様にありますように、
という手順になる模様。
これといった正式な手順が無いっぽいというカオスな状況らしい...
とりあえず、「WSL 2(Windows Subsystem for Linux 2)」に「Linux環境」を準備します。
で、参考サイト様にありますように、
sudo apt-get update
sudo apt-get upgrade
「Arch Linux」をどのミラーサイトから取得するかは、以下で確認できるっぽい。
## ## Arch Linux repository mirrorlist ## Generated on 2024-12-14 ## ## Japan #Server = http://mirrors.cat.net/archlinux/$repo/os/$arch #Server = https://mirrors.cat.net/archlinux/$repo/os/$arch #Server = http://jp.mirrors.cicku.me/archlinux/$repo/os/$arch #Server = https://jp.mirrors.cicku.me/archlinux/$repo/os/$arch #Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch #Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch #Server = https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch #Server = http://repo.jing.rocks/archlinux/$repo/os/$arch #Server = https://repo.jing.rocks/archlinux/$repo/os/$arch #Server = http://www.miraa.jp/archlinux/$repo/os/$arch #Server = https://www.miraa.jp/archlinux/$repo/os/$arch #Server = http://mirror.nishi.network/archlinux/$repo/os/$arch #Server = https://mirror.nishi.network/archlinux/$repo/os/$arch #Server = https://mirror.saebasol.org/archlinux/$repo/os/$arch
⇧ 日本の「Arch Linux」を管理・公開しているミラーサイト一覧が表示される。
今回は、「https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/iso/latest/」に配置されてるものを利用してみます。
wget https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/iso/latest/archlinux-bootstrap-2024.12.01-x86_64.tar.zst
wget https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/iso/latest/sha256sums.txt
zstdをインストールします。
sudo apt install zstd
展開(解凍)します。
sudo tar --zstd -xvf archlinux-bootstrap-2024.12.01-x86_64.tar.zst
「ミラーサイト」が全てコメントアウトされてしまっているようなので、「root.x86_64/etc/pacman.d/mirrorlist」を編集します。
とりあえず、「/jp」で検索し、ヒットした付近について、「https://archlinux.org/mirrorlist/」で「Japan」を検索した結果の一覧と同じURLについてコメントアウトを解除していくことにします。
圧縮します。
sudo tar czvf arch.tar.gz *
「Windows」環境の「C:\wsltars」というディレクトリを作成し、「arch.tar.gz」を配置します。(「Windows」環境のディレクトリにマウントされているのでダウンロードしなくても連携できる)
mkdir -p /mnt/c/wsltars
sudo mv arch.tar.gz /mnt/c/wsltars
自分は、「Cドライブ」の容量が心許ないので、「Eドライブ」にimportすることにしました。
wsl --import ArchLinux E:\soft_work\wsl2\arch\ C:\wsltars\arch.tar.gz
⇧ 無事、「WSL 2(Windows Subsystem for Linux 2)」に「Arch Linux」がインストールできたようです。
「WSL 2(Windows Subsystem for Linux 2)」の「Arch Linux」の「仮想ディスク」は、「Eドライブ」に配置されてます。
作業用にインストールした「Ubuntu-24.04」をアンインストールします。
「C:\wsltars\arch.tar.gz」も不要になったので、削除します。
とりあえず、「ArchLinux」の環境が構築できたので、次回は、「ArchLinux」環境に「Docker」や「Git」をインストールした後に、「nektos/act」をインストール、動作する環境を構築していく感じになるかと。
「ArchLinux」の構築方法の正確な手順が分からないので、再現性が担保できないのが辛いところですな...
正式な手順が無い以上、やってみたら動いたの域を出ていないことになってしまいますからな...
所謂、
⇧ 上記サイト様にあるような「オレオレ環境」が乱立していくことになるという...
あたりの環境構築については、統一的な導入手順が欲しいのよね...
後は、単純にgit cloneして動作しない「アプリケーション」であるなら、「アプリケーション」が正常に動作するまでの手順は欲しいよね...
構築した環境がこのプロジェクトでは間違いでした、とかの判断の仕様も無いですし...
毎度モヤモヤ感が半端ない…
今回はこのへんで。