ãã«ãã¹ã¬ãããå®é¨çå®è£
ããã¾ã§Pythonã¯ã°ãã¼ãã«ã¤ã³ã¿ããªã¿ããã¯ãæ¡ç¨ãã¦ãã¾ããããä»åã®Python 3.13.0ã§ã¯æ°ããªæ¹éã«æ²¿ã£ã¦ãåãã¦å®é¨çã«ã°ãã¼ãã«ã¤ã³ã¿ããªã¿ããã¯ããªããã¦ãã«ãã¹ã¬ããå¦çãå¯è½ã«ããããªã¼ã¹ã¬ããã¢ã¼ãï¼free-threaded modeï¼ãå®ç¾ãããã«ããç»å ´ãã¾ããã
ãã ããã®ããªã¼ã¹ã¬ããã¢ã¼ãã¯ãæ¨æºçãªPythonã®å®è£ ã¨ãã¦å ¬éããããã«ãã¨ã¯å¥ã®ããpython3.13tãï¼ãããã¯python3.13t.exeï¼ã¨ãã¦ãã«ããããå®è¡ãã¡ã¤ã«ãç¨ãã¦ãç°å¢å¤æ°ãPYTHON_GILããè¨å®ãããã弿°ã-X gil=1ããè¨å®ãã¦èµ·åããã¨ãã«æå¹ã«ãªãã¾ãã
JITã³ã³ãã¤ã©ãå®é¨çå®è£
Python 3.13.0ã§ã¯JITï¼Just-in-Timeï¼ã³ã³ãã¤ã©ã®å®é¨çå®è£ ãå§ã¾ãã¾ãããCè¨èªã«ããPythonã®æ¨æºçãªå®è£ ã§ããCPythonã«å¯¾ãã¦ã--enable-experimental-jitããªãã·ã§ã³ãä»ãã¦ãã«ãããå ´åã«JITã³ã³ãã¤ã©ãæå¹ã«ãªãã¾ãã
JITã³ã³ãã¤ã©ã¨ã¯ãã¹ã¯ãªããå®è¡æã«ã¤ã³ã¿ããªã¿ã«ããå®è¡ã¨ä¸¦è¡ãã¦ããã¯ã°ã©ã¦ã³ãå¦çã§ãã¤ãã£ããã¤ããªãçæããåã³åãå¦çãå®è¡ãããéã«ã¯ãã¤ãã£ããã¤ããªãå®è¡ãããã¨ã§ããé«éãªå¦çãå®ç¾ããææ³ã§ãã
JavaScriptãRubyãªã©äººæ°ã®é«ãããã°ã©ãã³ã°è¨èªã®å¤ãã¯å¦çé度ãé«éåããããã«ãã§ã«JITã³ã³ãã¤ã©ãæè¼ãã¦ããããããããããPythonã«ãæ¡ç¨ããããã¨ã¨ãªãã¾ããã
â§ ãï½ãããGILï¼Global Interpreter Lockï¼ãã®å½±é¿ç¯å²ã大ãéããæ°ã¯ãã¾ãããå°æ¥çã«ã¯ãGILï¼Global Interpreter Lockï¼ãã¯å»æ¢ã®æ¹åã§é²ããã§ãããï¼
ãããã¯ã¼ã¯æ©å¨ã®è¨å®æ å ±ãããã¯ã¢ãããããã¼ã«ãOxidizedãã¨ã¯
GitHubã«å ¬éããã¦ããå ¬å¼ã®READEMEã®èª¬æã«ããã¨ã
Oxidized is a network device configuration backup tool. It's a RANCID replacement!
It is light and extensible and supports over 130 operating system types.
â§ ãããã¯ã¼ã¯æ©å¨ã®è¨å®æ å ±ã®ããã¯ã¢ãããç®çã¨ãã¦ãããã¼ã«ã§ããã130ãè¶ ãããOSï¼Operation Systemï¼ãã«å¯¾å¿ãã¦ãã¾ãã¨ã
ã¨ãããããOSï¼Operation Systemï¼ãã®ç¨®é¡ã®å¤ãã«çµ¶å¥ãããããªããã ã...
ã§ãåã ã®ãOSï¼Operation Systemï¼ãã§ãè¨å®æ å ±ãåå¾ããéã«å©ç¨ã§ããã³ãã³ããç°ãªããããã¦ãåå¥å¯¾å¿ããå½¢ã«ãªããããå¾ãªãã¨ãããã¨ãããã
ã¡ãªã¿ã«ããOxidizedã以å¤ã«ãããããããããRepositoriesãã§çµãè¾¼ã¿ããããã¨ã
â§ ã¨ããã®ã ãã©ãããããããã¥ã¡ã³ããæ´åããã¦ããªãã®ã§ãä½ã䏿ããããªãæã¯ã½ã¼ã¹ã³ã¼ãã確èªããããå¾ãªãã¨ããæãã§ããªããªãã«è¾ãç¶æ³...
2024å¹´10æ15æ¥ï¼ç«ï¼è¿½è¨ï¼â ãããã
ä½ã¨è¨ã£ã¦ãã
â§ãOxidizedãã®ãªãã¸ããªãªã®ã«ããoxidizedããã¤ã³ã¹ãã¼ã«ããã«ãoxidized-webããã¤ã³ã¹ãã¼ã«ãã¦ãããDockerfileãã¨ããã®ããããåãããã®ãã...
ã©ãããã
â§ Gitãªãã¸ããªã®ãDockerfileãã¯ã¬ã³ç¡è¦ã§ããDocker Hubãããç´ã«Dockerã¤ã¡ã¼ã¸ããã«ãã¦ãã¦çæããæãããã...
Gitãªãã¸ããªã®ãDockerfileãã®åå¨ãè¬éãããã ã...
2024å¹´10æ15æ¥ï¼ç«ï¼è¿½è¨ï¼â ããã¾ã§
ãããã¯ã¼ã¯æ©å¨ã®è¨å®æ å ±ãããã¯ã¢ãããããã¼ã«ãOxidizedãã®åä½ç°å¢ãæ§ç¯ãã¦ã¿ã
æ¥åã§ãOxidizedããå©ç¨ããæ©ä¼ããã£ãã®ã§ãç°å¢æ§ç¯ãåå¿é²ã¨ãã¦æ®ãã¦ããã
åºæ¬çã«ã¯ã
â§ ä¸è¨ã®è¨äºã®æã«èª¬æããããã«ãæä½éãä»®æ³ãã·ã³2å°ãããã°ãOxidizedãã®æ©è½ã試ããã¨ã¯ã§ãã¾ãã¨ã
æé ã®æµãã¨ãã¦ã¯ã
- ä»®æ³ãã·ã³ï¼å¯¾è±¡æ©å¨ï¼ã«SSHãã°ã¤ã³ããæ¥ç¶æ å ±ã確èªãã
- ä»®æ³ãã·ã³ï¼Oxidizedï¼ã«SSHãã°ã¤ã³ããã¦ã¼ã¶ã¼ã使ãã â»1
- ã¦ã¼ã¶ã¼ã®ãã¼ã ãã£ã¬ã¯ããªï¼/home/[user]ï¼ã§ããOxidizedãã®é¢é£ãã¡ã¤ã«ç¾¤ã git cloneãã¦ãã â»2
- ãOxidizedãã®è¨å®ãã¡ã¤ã«ã使ãã
- /home/[user]/.config/oxidized/config â»3
- /home/[user]/.config/oxidized/router.db
- VS Codeï¼Visual Studio Code ï¼ã®æ¡å¼µæ©è½ãã¤ã³ã¹ãã¼ã«ãã
- åä½ç¢ºèªãè¡ã
â»1 Dockerã使ãã®ã§ããã°ãDockerfileã§è¡ãã
â»2 Dockerã使ãã®ã§ããã°ãgit cloneãããã®ã¯ãDockerfileãä¹è³ã¯ãdocker-compose.ymlã¨ãã ãããã°è¯ãã
â»3ãOxidizedãå´ã§ãconfigãã¡ã¤ã«ã®é ç½®å ´æã¯æ±ºãããã¦ããã
â§ ã¨ããããã«ã
No | ç°å¢å¤æ° | å 容 |
---|---|---|
1 | OXIDIZED_HOME | /etc/oxidized/config |
2 | HOME | ~/.config/oxidized/config |
ã®é çªã§åç §ãããããã®ã ãã©ããOxidizedããå®è¡ããéã¯ãrootã¦ã¼ã¶ã¼ä»¥å¤ã®ã¦ã¼ã¶ã¼ã§è¡ãã®ãæ¨å¥¨ãã¦ããããã
ä½ã¨è¨ããããoxidizedãã¨ããã¦ã¼ã¶ã¼ãåæã«ãã¦ãã£ã½ãã®ã ããã¦ã¼ã¶ã¼ãå¤ãã¦ãè¯ãã®ããåãããªããã ãã
â§ ä¸è¨ãµã¤ãæ§ã«ããã¾ãã¨ããç°å¢å¤æ°ãã®ãOXIDIZED_HOMEããæå³ãçºãã¦ããªã模æ§ã
ãOxidizedãã®å ¬å¼ã®ããã¥ã¡ã³ãã«ããã¨ã
ãYou can set the env variable OXIDIZED_HOME
 to change its home directory.ã
ã¨ããã®ã§ããç°å¢å¤æ°ãã®ãOXIDIZED_HOMEããè¨å®ããã°ããHOMEããå¤ããããã¨ããã®ã ãããOxidizedããåç §ããconfigãã¡ã¤ã«ã®ãã¹ãå¤ããããã®ãã¨æããããå¤ããããªãã¨ã
æ··ä¹±ããã¦ããã¾ããª...
ã§ã¯ãåä½ç°å¢ãæ§ç¯ãã¦ããã¾ããã
ã¡ãªã¿ã«ãå ¬å¼ã®ããã¥ã¡ã³ãã«ããã¨ã
â§ãOxidizedãã®ã¤ã³ã¹ãã¼ã«æ¹æ³ã¨ãã¦ã¯ã
- Debian and Ubuntu
- CentOS, Oracle Linux, Red Hat Linux
- FreeBSD
- Build from Git
- Docker
- Podman-Compose
- Installing Ruby 2.3 using RVM
â§ 7ãã¿ã¼ã³ããã¾ãã¨ã
â 1. ä»®æ³ãã·ã³ï¼å¯¾è±¡æ©å¨ï¼ã«SSHãã°ã¤ã³ããæ¥ç¶æ å ±ã確èªãã
ãOxidizedãã§å¿ è¦ã¨ãªããrouter.dbããã¡ã¤ã«ã®è¨å®ã«å¿ è¦ãªæ å ±ã確èªãã¾ãã
å¿ è¦ãªæ å ±ã¯ã
No | é ç® | å 容 |
---|---|---|
1 | ãã¹ãå | 対象æ©å¨ã®ãã¹ãå |
2 | IPã¢ãã¬ã¹ | 対象æ©å¨ã®IPã¢ãã¬ã¹ |
3 | Oxidizedã®modelã¯ã©ã¹ã®èå¥å | Oxidizedã®configã®model_mapã®ãã¼ |
4 | SSHãã°ã¤ã³ã¦ã¼ã¶ã¼ | 対象æ©å¨ã®SSHã¦ã¼ã¶ã¼ |
5 | SSHãã°ã¤ã³ã¦ã¼ã¶ã¼ã®ãã¹ã¯ã¼ã | 対象æ©å¨ã®SSHã¦ã¼ã¶ã¼ã®ãã¹ã¯ã¼ã |
ã«ãªãã®ã§ããããã®æ å ±ã®å ã以ä¸ã«ã¤ãã¦ã確èªãã¾ãã
- ãã¹ãå
- IPã¢ãã¬ã¹
- SSHãã°ã¤ã³ã¦ã¼ã¶ã¼
- SSHãã°ã¤ã³ã¦ã¼ã¶ã¼ã®ãã¹ã¯ã¼ã
ãSSHãã°ã¤ã³ã¦ã¼ã¶ã¼ããSSHãã°ã¤ã³ã¦ã¼ã¶ã¼ã®ãã¹ã¯ã¼ããã«ã¤ãã¦ã¯ã対象æ©å¨ã®ç®¡çè ã«ç¢ºèªããããç¡ãã®ã ã...
èªåã®ç°å¢ã§ã¯ãVirtualBoxã§ä»®æ³ãã·ã³ï¼å¯¾è±¡æ©å¨ï¼â»ãæ§ç¯ãã¦ããã®ã§ãSSHãã°ã¤ã³ãã¦ããã¹ãåããIPã¢ãã¬ã¹ãã確èªã
â» VirtualBox以å¤ã®ä»®æ³ã½ããã¦ã§ã¢ã§ä½æã§ãå ¨ãåé¡ãªããå¯è½ã§ããã°ã宿©ãæã¾ãããããããã¯ã¼ã¯æ©å¨ã®ãOSï¼Operation Systemï¼ãã¯æåã«ãªã£ã¦ããã¨æãããã®ã§ãæã ã®ããã«ãéã®å¼¾ä¸¸ãã«é ¼ããªãçµæ¸å¼±è ã¯ãOSSï¼Open Source Softwareï¼ãã«ç¸ããã¨ã«ããããå¿è«ããOSï¼Operation Systemï¼ãåºæã®ã³ãã³ãã«ã¤ãã¦åä½ç¢ºèªã¯ã§ããªãããã ã...
ã¨ããããã
â§ ä¸è¨ãµã¤ãæ§ãåèã«ã確èªãã¾ãã
IPã¢ãã¬ã¹ã®ç¢ºèª
ip a
ãã¹ãåã®ç¢ºèª
getent hosts [ip aã§ç¢ºèªããIPã¢ãã¬ã¹]
é©å½ãªããã¹ãã¨ãã£ã¿ã«ã³ãããã¦ããã¾ãã
â 2. ä»®æ³ãã·ã³ï¼Oxidizedï¼ã«SSHãã°ã¤ã³ããã¦ã¼ã¶ã¼ã使ãã
以ä¸ããOxidizedããã©ã¡ãã§åãããã«ãã£ã¦ãæé ãå¤ããã
- ãã¹ãã§åããå ´å
- Dockerã³ã³ããã®ãããªãã®ã§åããå ´å
â â ãã¹ãã§Oxidizeãåããå ´å
ããä¸å°ã®ä»®æ³ãã·ã³ï¼ãOxidizedãã稼åãããç¨ï¼ã«SSHãã°ã¤ã³ãããOxidizedããåä½ãããã¦ã¼ã¶ã¼ãã使ãã¾ããï¼ãOxidizedãã®å®è¡ã¯rootã¦ã¼ã¶ã¼ä»¥å¤ãæ¨å¥¨ã®ããï¼ã
èªåã®ç°å¢ã§ã¯ããWSL 2ï¼Windows Subsystem for Linux 2ï¼ãã§ä»®æ³ãã·ã³â»ãæ§ç¯ãã¦ããã®ã§ãSSHãã°ã¤ã³ãã¾ãã
â» WSL 2ï¼Windows Subsystem for Linux 2ï¼ä»¥å¤ã®ä»®æ³ã½ããã¦ã§ã¢ã§ä½æã§ãå ¨ãåé¡ã¯ãªãã
ã¦ã¼ã¶ã¼ãoxidizedãã追å ãã¾ãã
useradd oxidized
ã¦ã¼ã¶ã¼ãoxidizedãã®ãã¹ã¯ã¼ããè¨å®ãã¾ãã
passwd oxidized
ã¦ã¼ã¶ã¼ãoxidizedãã®ãã¼ã ãã£ã¬ã¯ããªã使ããã¦ããã確èªã
ls -la /home
ãå®è¡ãã¦ããã
â â Dockerã³ã³ããã§Oxidizeãåããå ´å
ãDockerfileãã§ãã¦ã¼ã¶ã¼ã追å ãããã
â§ãOxidizedãã§ç¨æããã¦ãããDockerfileãã§è¿½å ãã¦ããã¦ã¼ã¶ã¼ãå©ç¨ããã®ã§ããã°ã使¥ä¸è¦ã
â 3. ã¦ã¼ã¶ã¼ã®ãã¼ã ãã£ã¬ã¯ããªï¼/home/[user]ï¼ã§ããOxidizedãã®é¢é£ãã¡ã¤ã«ç¾¤ã git cloneãã¦ãã
以ä¸ããOxidizedããã©ã¡ãã§åãããã«ãã£ã¦ãæé ãå¤ããã
- ãã¹ãã§åããå ´å
- Dockerã³ã³ããã®ãããªãã®ã§åããå ´å
â â ãã¹ãã§Oxidizeãåããå ´å
GitHubã§å ¬éããã¦ããREADMEã«ããã
â§ãInstallationãã®æé ã宿½ãã¦ããã
æé ã¨ãã¦ã¯ã
- GitHubã®ãOxidizedãã®ãªãã¸ããªãå©ç¨ããªã
- GitHubã®ãOxidizedãã®ãªãã¸ããªãå©ç¨ãã
- Build from Git
â§ 4ã¤ã»ã©ç¨æããã¦ããæ¨¡æ§ã
ãã ããBuild from Gitãã«ã¤ãã¦ã¯ãäºåã«ãGitãã¨ãRubyãã®ã¤ã³ã¹ãã¼ã«ã¯æä½éãå¿ è¦ãªæ°ããããã ããæé ã«ã¯è¨è¼ãç¡ãããã...
â â Dockerã³ã³ããã§Oxidizeãåããå ´å
ãGitããã¤ã³ã¹ãã¼ã«ããã¦ããªãå ´åã¯ãäºåã«ãGitããã¤ã³ã¹ãã¼ã«ãã¦ããã¾ãããã
ä»®æ³ãã·ã³ï¼ãOxidizedãã稼åãããç¨ï¼ã«SSHãã°ã¤ã³ãã¦ããç¶æ ã§ããã£ã¬ã¯ããªã®ç§»åã
cd [é©å½ãªãã£ã¬ã¯ããª]
git cloneãå®è¡ããã
git clone https://github.com/ytti/oxidized.git
èªè¨¼æ å ±ã®å ¥åãæ±ãããããã以ä¸ã§èªè¨¼ã
No | é ç® | å 容 |
---|---|---|
1 | ã¦ã¼ã¶ã¼ | å人ç¨GitHubã¢ã«ã¦ã³ã |
2 | ãã¹ã¯ã¼ãâ»1 | PATï¼Personal Access Tokenï¼Â |
â»1 å ¬ééµèªè¨¼ãå©ç¨ãã¦ããå ´åã¯ãèªè¨¼æ å ±ã®å ¥åã¯æ±ããããªãã¨æãããããPATï¼Personal Access Tokenï¼ãã¯äºåã«ããGitHubãã®ãSettingsãã§ä½æãã¦ããã
git cloneããã¦ããã確èªã
ls -laR
â 4. ãOxidizedãã®è¨å®ãã¡ã¤ã«ã使ãã
以ä¸ããOxidizedããã©ã¡ãã§åãããã«ãã£ã¦ãæé ãå¤ããã
- ãã¹ãã§åããå ´å
- Dockerã³ã³ããã®ãããªãã®ã§åããå ´å
è¨å®ãã¡ã¤ã«ã¯ã以ä¸ã®2ã¤ã
No | è¨å®ãã¡ã¤ã« | å 容 |
---|---|---|
1 | configãã¡ã¤ã« | Oxidizedã®è«¸ã ã®è¨å® |
2 | router.dbãã¡ã¤ã« â» | 対象æ©å¨ã«æ¥ç¶ããããã®æ å ±ãOxidizedã®modelã¯ã©ã¹ãæå®ã |
⻠対象æ©å¨ãè¤æ°ã«ãªãå ´åã¯ã対象æ©å¨ã®æ°ã ãè¡æ°ãå¢ãããè¨å®å 容ã®ãã©ã¼ãããã¯å¾è¿°ã
âconfigãã¡ã¤ã«
â â ãã¹ãã§Oxidizeãåããå ´å
以ä¸ã®ãã¡ã¤ã«ã使ããã
- /home/[userâ»]/.config/oxidized/config
- /home/[userâ»]/.config/oxidized/router.db
â» userã¯ãoxidizedãã«ãã¦ããã®ãç¡é£ãªæ°ãããã
â â Dockerã³ã³ããã§Oxidizeãåããå ´å
Dockerã³ã³ããã®ãã£ã¬ã¯ããªã¨ãã¦ã³ããããã¹ãã®ãã£ã¬ã¯ããªã«ä½æãã¦ããã
â§ ä¸è¨ãåèã«ãDockerã³ã³ããå ã®ã/home/oxidized/.config/oxidizedããã£ã¬ã¯ããªã«ãã¦ã³ãããå½¢ã«ãªã£ã¦ããã°OKã
- [é©å½ãªãã£ã¬ã¯ããªâ»]/config
- [é©å½ãªãã£ã¬ã¯ããªâ»]/router.db
â» Dockerã³ã³ããã®çæã»èµ·åã®éã«ãDockerã³ã³ããå ã®ã/home/oxidized/.config/oxidizedããã£ã¬ã¯ããªã«ãã¦ã³ãããã®ãå¿ããªããã°OKã
使ããããåã ã®ãã¡ã¤ã«ãç·¨éã
â â ãã¹ãã§Oxidizeãåããå ´å
â/home/[user]/.config/oxidized/config
vi /home/[user]/.config/oxidized/config
â â Dockerã³ã³ããã§Oxidizeãåããå ´å
â[é©å½ãªãã£ã¬ã¯ããª]/config
vi [é©å½ãªãã£ã¬ã¯ããª]/config
ãã¡ã¤ã«ã®å 容ã¯åãã§ã
â â å ±é
以ä¸ã®ããã«è¨å®ã
--- #username: oxidized #password: S3cr3tx #model: junos interval: 60 #interval in seconds log: ~/.config/oxidized/log debug: false threads: 30 # maximum number of threads # use_max_threads: # false - the number of threads is selected automatically based on the interval option, but not more than the maximum # true - always use the maximum number of threads use_max_threads: false timeout: 20 retries: 3 prompt: !ruby/regexp /^([\w.@-]+[#>]\s?)$/ crash: directory: ~/.config/oxidized/crashes hostnames: false #vars: # enable: S3cr3tx groups: {} rest: 127.0.0.1:8888 pid: ~/.config/oxidized/oxidized.pid input: default: ssh, telnet debug: false ssh: secure: false output: file: directory: ~/.config/oxidized/configs # default: git # git: # user: Oxidized # email: [email protected] # repo: "~/.config/oxidized/oxidized.git" source: default: csv csv: file: ~/.config/oxidized/router.db delimiter: !ruby/regexp /:/ map: name: 0 ip: 1 model: 2 username: 3 password: 4 vars_map: enable: 5 model_map: local_test: linuxgeneric # cisco: ios # juniper: junos
â§ ã¨ãã£ãæãã«ãã¦ã¾ãããèª ã«éºæ¾ãªãã¨ã«è¨å®é ç®ã®æå³ã«ã¤ãã¦å ¬å¼ã®ããã¥ã¡ã³ãã®æ å ±ãè¶³ããªéããã®ã§ãé°å²æ°ã§è¨å®ããããå¾ãªã...
ã¡ãªã¿ã«ãmodelã¯ã©ã¹ã«ã¤ãã¦ã¯ã
⧠追å ãããã¨ãã§ããã®ã ããæé»çãªãã¡ã¤ã«ã®å½åè¦åããããããããã¢ã³ãã¼ã¹ã³ã¢ããå«ãã¨ã¨ã©ã¼ã«ãªã£ãã®ã§è¦æ³¨æã
ã¤ã¾ãã
- ã¨ã©ã¼åºãªã
customios.rb - ã¨ã©ã¼åºã
custom_ios.rb
â§ ã®ãããªæãã§ãmodelã¯ã©ã¹ã®ãã¡ã¤ã«ã®å½åã¯ãã¢ã«ãã¡ãããã ãã«ãã¦ãããæ¹ãè¯ãããã
ã¾ããç¡è¶è¦è¶ã«æ³¥æ²¼ã«ããã£ããã ãï¼æ¶ï¼
ârouter.dbãã¡ã¤ã«
â â ãã¹ãã§Oxidizeãåããå ´å
â/home/[user]/.config/oxidized/router.db
vi /home/[user]/.config/oxidized/router.db
â â Dockerã³ã³ããã§Oxidizedãåããå ´å
â[é©å½ãªãã£ã¬ã¯ããª]/router.db
vi [é©å½ãªãã£ã¬ã¯ããª]/router.db
â â å ±é
ç¶ãã¦ãä»®æ³ãã·ã³ï¼å¯¾è±¡æ©å¨ï¼ã«å¯¾ããSSHæ¥ç¶æ å ±ãªã©ãè¨å®ããã
以ä¸ã®ããã«è¨å®
[対象æ©å¨ã®ãã¹ãå]:[IPã¢ãã¬ã¹]:[ã¢ãã« â»1]:[対象æ©å¨ã¸ã®SSHãã°ã¤ã³ã¦ã¼ã¶ã¼]:[対象æ©å¨ã¸ã®SSHãã°ã¤ã³ã¦ã¼ã¶ã¼ã®ãã¹ã¯ã¼ã]
â»1 configã®è¨å®é ç®ãmodel_mapãã®key
⧠対象æ©å¨ã®æ°ã®åã ãè¡æ°ãããæãã«ãªããã¨ã
â 5. ãOxidizedãããããã°ããã®ã«å¿ è¦ãªä¾åã©ã¤ãã©ãªãã¤ã³ã¹ãã¼ã«ãã
ãOxidizedããåä½ãããã®ã«å¿ è¦ãªä¾åã©ã¤ãã©ãªãã¤ã³ã¹ãã¼ã«ãã¦ããã
ã¡ãªã¿ã«ãDockerã§åä½ãããå ´åã¯ãä¾åã©ã¤ãã©ãªã®ã¤ã³ã¹ãã¼ã«ã¯ä¸è¦ã ãããããã°å®è¡ã¨ãããå ´åã¯ãDockerã§åä½ãããç¶æ ã ã¨ç¡çãããªæ°ããã¦ããã
ã¨è¨ãã®ãã
â§ ä¸è¨ã®è¨äºã®æã«åºã¦ãããrunitãã¨ããã©ã¤ãã©ãªã§ãDockerã³ã³ãããèµ·åããéã«ããOxidizedããå®è¡ããã¦ãã¾ã常é§ããã»ã¹ã®ããã«ç¨¼åãã¦ãã¾ãã®ã§ããããã°å®è¡ãã§ãããã«ãªãã
â â ãã¹ãã§Oxidizeãåããå ´å
å ±éãåç §ã
â â Dockerã³ã³ããã§Oxidizedãåããå ´å
Dockerfileã§èªåèµ·åãããªãããã«ãã¦ããã
â â å ±é
ç°å¢ã«ãä¾ãããã¨ã¯æããã
debug.gem 㯠Ruby3.1 ããããã©ã«ãã§Rubyã«å梱ããã¦ãã gem ã§ããã½ã¼ã¹ã³ã¼ãã¯ä»¥ä¸ãªãã¸ããªã«ããã¾ãã
â§ ä¸è¨ãµã¤ãæ§ãåèã«ã
- Gemï¼Rubyã®ã©ã¤ãã©ãªï¼
- debug.gem â»1
- SimpleCov â»2
- Rspec â»2
- Linuxã®ã©ã¤ãã©ãª
- lsof â»3
â»1 Ruby 3.1以ä¸ãå©ç¨ãã¦ãããªãã忢±ããã¦ããã®ã§ã¤ã³ã¹ãã¼ã«ä¸è¦ã
â»2 ãã¹ãããªããªãä¸è¦ã
â»3 Oxidizedã®ããã»ã¹ç¢ºèªç¨ãå¿ é ã¨ããããã§ã¯ãªãã
ããããããã¨è¯ãããã
â 6. VS Codeï¼Visual Studio Code ï¼ã®æ¡å¼µæ©è½ãã¤ã³ã¹ãã¼ã«ãã
ãVS Codeï¼Visual Studio Code ï¼ããå©ç¨ãã¦éçºãã¦ãããã¨ãæ³å®ãã¦ããããæä½éã
- ãªã¢ã¼ãæ¥ç¶å
ã®VS Codeï¼Visual Studio Codeï¼ã®ã¯ã¼ã¯ã¹ãã¼ã¹
- Remote Development
- ãªã¢ã¼ãæ¥ç¶å ã®VS Codeï¼Visual Studio Codeï¼ã®ã¯ã¼ã¯ã¹ãã¼ã¹
â§ ä¸è¨ã¯ã¤ã³ã¹ãã¼ã«ãã¦ãããæ¹ãè¯ããã¨ã
â 7. åä½ç¢ºèª
ã§ã¯ããVS Codeï¼Visual Studio Code ï¼ãã®ãæ¡å¼µæ©è½ãã§ãããRemote Developmentããå©ç¨ãã¦ããWSL 2ï¼Windows Subsystem for Linux 2ï¼ãã«SSHãã°ã¤ã³ã
â â ãã¹ãã§Oxidizeãåããå ´å
ãã£ã¬ã¯ããªã鏿ã
ãTERMINALãã§ãã¦ã¼ã¶ã¼ãåãæ¿ãã¦ãã[git cloneãããã£ã¬ã¯ããª]/binãã«ç§»åã
su oxidized
cd [git cloneãããã£ã¬ã¯ããª]/bin
ãOxidizedããå®è¡ããã
ruby oxidized
â§ ã§å®è¡ã§ããã
â â Dockerã³ã³ããã§Oxidizedãåããå ´å
â â â Oxidizedãèªåèµ·åããããã«ãªã£ã¦ããå ´å
Dockerfileã®ããå ´æã«ç§»åã
cd [Dockerfileã®é ç½®ããã¦ãããã£ã¬ã¯ããª]
Dockerã¤ã¡ã¼ã¸ä½æã
docker build . -t [NAMEâ»1]:[TAG]â»1
â»1 Docker Composeãªã©ãå©ç¨ããå ´åã¯ãdocker-compose.ymlã®è¨å®ã«åãããã
ãã®å¾ã
- docker run
- docker-compose up
- docker compose up
ããããã§ãDockerã³ã³ããã®çæã»èµ·åã
â â â Oxidizedãèªåèµ·åããããã«ãªã£ã¦ããªãå ´å
TODOï¼æªæ¤è¨¼
Â
å ¬å¼ã®ããã¥ã¡ã³ãã®æ å ±ãå°ãªéãã¦ã
â§ æµ·å¤ã§ããåä½ããªãã£ã¦ãã話ãåºã¦ãããã...
æ§ããã«è¨ã£ã¦ããå°çã§ãããªããã ã...
æ¯åº¦ã¢ã¤ã¢ã¤æãå端ãªãâ¦
ä»åã¯ãã®ã¸ãã§ã
Â
Â