ユーザ用ツール

サイト用ツール


univ:環境構築オンプレ

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
univ:環境構築オンプレ [2025/08/19 08:36] angisuniv:環境構築オンプレ [2025/09/03 09:30] (現在) angis
行 1: 行 1:
 ====== 環境構築 ====== ====== 環境構築 ======
  
-この夏休みに情報をまとめたい。インプット先、アウトプット先。現状は情報が転がってりリソースの無駄遣いが酷い。 +この夏休みに情報をまとめたい。 
-この情報はセキュリティ的にまずいがモチベ向上のめ公開すること+属性情報をひすら抽象化するとでこれを公開・理解助けする。 
 +また、システム化することで現在の作業の効率化を目指す。
  
 ---- ----
 +===== 思想 =====
 +なるべく外部サービスには依存しない。OSSが可能ならそちらを利用する。
 +理由はサービスにお金をかけてもいいが、持続性や維持費の面で安定性に欠けるからだ。
 +私は安定を求める。安定した基盤があってこそ賭けに出ることができるからだ。また次に進む可能性を手に入れられる。
 +自己改善する効率化をする。claude codeはこれ以外にもいけるのでは?
 +===== 理想 =====
 +朝6時に起きてトーストを食べてとコーヒーを飲む。
 +今日のやることを確認する。
 +お気に入りの服で身だしなみを整える。
 +落ち着いた状態で9時からやりたいことに取り組む。
 +陽が沈む前には帰ってリラックスする。
 +好きで栄養があるものを食べる。
 +体を洗って歯磨きをして綺麗な状態になる。
 +10時には眠くなって眠る。
 +
 +こうなるためには無駄作業を効率化し、潜在的な作業さえ自動化する。
 +===== やりたいこと =====
   * revealjsのテンプレート化   * revealjsのテンプレート化
   * リソース使用量の監視   * リソース使用量の監視
-===== サーバー =====+  * 1. dotfiles with chezmoi
  
 +全OSで使える。設定をテンプレ化(OSごとに分岐できる)
 +
 +chezmoi apply でホームディレクトリに適用
 +
 +if .chezmoiignore
 +{{- if not (eq .os "linux") }}
 +.config/i3/
 +{{- end }}
 +
 +2. 同期フォルダ with Syncthing
 +
 +全OS対応、P2P型でクラウド不要
 +
 +~/Workspace など作業ディレクトリを常に同期
 +
 +3. nix + home-manager(NixOS以外でも使える)
 +
 +nix-darwin でmacOSでも使える
 +
 +開発ツール、設定、エイリアスをNixで統一管理
 +
 +{
 +  programs.zsh.enable = true;
 +  home.file.".config/nvim/init.lua".text = ''
 +    -- 共通設定ここに
 +  '';
 +}
 +
 +===== サーバー =====
 今ある分散した機能をラズパイに集約する。 今ある分散した機能をラズパイに集約する。
 現環境の引っ越し及び今後の拡張性を考えた構成にする必要がある。 現環境の引っ越し及び今後の拡張性を考えた構成にする必要がある。
行 17: 行 64:
   * refixa   * refixa
   * dokuwiki   * dokuwiki
- 
 ==== application ==== ==== application ====
   * chart8   * chart8
行 25: 行 71:
   * claude code   * claude code
   * docker   * docker
-  * +  * nixで定義 
 +===== OS ===== 
 +==== linux ==== 
 +管理などはubuntu,遊びや趣味ではarch,システム化はnixosで行う。 
 +特に開発環境は再現性が欲しいためnixosで行うだろう。だが実装に時間がかかる。 
 +一方archは手頃に試すことができる。ubuntuは安定性があるのでデプロイ先になると思う。 
 +==== windows,mac ==== 
 +ゲームやアプリを使うときに利用すると思う。性能的にも高いものをこちらで利用することが多いだろう。 
 +===== ストレージ ===== 
 +統一ストレージを目指す。全てのデータをクラウドに集約していつでもどこでも利用できるようにする。 
 +利用するサービスはgoogle drive. 
 +ディレクトリ構造を考える必要がある。またNASを構築してローカルバックアップや自動連携も考える必要がある。 
 +===== password ===== 
 +1passwordに移行する 
 +===== メールアドレス ===== 
 +[email protected]をバックアップメールアドレスとして各サービスで[email protected],[email protected],[email protected]を利用する。これにより各活動のフィルタリングを行う。 
 +また、[email protected][email protected]の活用も考えれる。 
 +===== ブラウザ ===== 
 +現在vivaldi,chrome,firefoxを利用している。 
 +各ブラウザの最適化と利用プラグインのリスト化をする。 
 +linux->firefox,chrome->モバイル端末、検証、vivladiのサブ、vivaldi->メインブラウザ 
 +となっているが、設定や拡張機能、タブの蓄積が問題になっている。 
 +===== sns ===== 
 +  * facebook/linkedin 
 +  * instagram 
 +  * twitter 
 +  * discord/slack 
 +  * blog,youtube,同人誌,スライド? 
 +自分の情報のアウトプット先として以上がある。それぞれにどのような情報置くかは省略する。 
 +===== 名前と活動 ===== 
 +自分の中でnatsu,fixus,angisで分けて考えているが、それぞれの活動をまとめる必要がある。公開してもいい。 
 +natsu->日常や遊び 
 +fixus->仕事 
 +angis->趣味や研究 
 +===== a ===== 
 +✅ 準備段階 
 +1. 必要なファイルをダウンロード・配置 
 + 
 +Debian Cloud Image(例:debian-13-nocloud-arm64.qcow2)を /var/lib/vz/template/ に配置 
 + 
 +2. VMの新規作成(ID: 100、名前: debian) 
 +sudo qm create 100 --name debian --memory 1024 --net0 virtio,bridge=vmbr0 
 +sudo qm create 100 --name debian --memory 1024 --net0 virtio,bridge=vmbr0 
 + 
 +3. qcow2 ディスクをVMに取り込む(rawに変換) 
 +sudo qm importdisk 100 /var/lib/vz/template/debian-13-nocloud-arm64.qcow2 local 
 + 
 +✅ Cloud-Initに対応する設定 
 +4. ディスク接続 
 +sudo qm set 100 --scsihw virtio-scsi-pci 
 +sudo qm set 100 --scsi0 local:100/vm-100-disk-0.raw 
 + 
 +5. ブートディスクに設定 
 +sudo qm set 100 --boot c --bootdisk scsi0 
 + 
 +✅ Cloud-Init設定ファイルの用意 
 +6. cloud-config(user-data)を /var/lib/vz/snippets/cloud-config に保存(例): 
 +#cloud-config 
 +hostname: debian 
 + 
 +users: 
 +  - name: mtdnot 
 +    sudo: ['ALL=(ALL) NOPASSWD:ALL'
 +    shell: /bin/bash 
 +    ssh-authorized-keys: 
 +      - ssh-rsa AAAAB3...yourkey...== 
 +disable_root: true 
 + 
 +package_update: false 
 +package_upgrade: false 
 + 
 +final_message: "Cloud-init finished. System is ready." 
 + 
 +network: 
 +  version: 2 
 +  ethernets: 
 +    eth0: 
 +      dhcp4: true 
 + 
 +7. スニペットとしてVMに適用 
 +sudo qm set 100 --cicustom "user=local:snippets/cloud-config" 
 + 
 +✅ Cloud-Init ディスクの接続(SCSIに変更) 
 +8. ide2 を削除して scsi1 に接続 
 +sudo qm set 100 -delete ide2 
 +sudo qm set 100 --scsi1 local:cloudinit 
 + 
 +✅ 起動と接続 
 +9. VM起動 
 +sudo qm start 100 
 + 
 +10. VMがIPを取得したらSSHで接続(公開鍵認証) 
 +ssh -i ~/Downloads/my-key.pem mtdnot@<VMのIPアドレス> 
 + 
 +🎯 ここまででできること 
 + 
 +VMは自動でユーザー mtdnot が作られ、SSH鍵でログイン可能 
 + 
 +Cloud-Initにより、ホスト名・ネットワーク・ユーザー設定が済んだ状態で起動 
 + 
 +起動時に /var/log/cloud-init.log にログが残る 
univ/環境構築オンプレ.1755592582.txt.gz · 最終更新: 2025/08/19 08:36 by angis

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki