docker

wsl

如何讓 WSL 持續在背景作業

最近為了方便一些作業所以把 Docker 安裝在 WSL 上,但常常會發生 WSL 的 terminal 關掉的話就會造成裡面跑的 Docker 也一併被關掉,Google 了一下發現不少人有這問題,最終的解決方案如下: 1. 在 %userprofile%/.wslconfig 設定 [wsl2] vmIdleTimeout=-1 2. 設定結束後記得重啟 wsl wsl --shutdown 3. 執行以下 command wsl --exec dbus-launch true Ref: * How to make wsl2 alive in the background #10138

By Mars

mysql

MySQL Docker 無法使用 --default-authentication-plugin 的問題

一直以來開發時期若有需要使用 MySQL 都是使用 Docker 來建立,畢竟方便又不會汙染到本機,之前一直都是使用以下的 docker-compose.yaml 來啟動: version: "3.1" services: db: image: mysql:8 command: --default-authentication-plugin=mysql_native_password restart: always ports: - "3306:3306" environment: MYSQL_DATABASE: {{MYSQL_DATABASE}} MYSQL_ROOT_PASSWORD: {{MYSQL_ROOT_PASSWORD}} 不過最近新建立時, pull 了最新版本的 MySQL image 後啟動確失敗了,

By Mars

docker

在 Windows WSL 中安裝 Docker

基本上要在 WSL 底下安裝 Docker 其實蠻簡單的,只要按照官方的步驟安裝即可,可以參考 官方文件 來安裝,底下紀錄主要的幾個指令步驟: 這邊主要的目標 OS 是 Ubuntu 準備 * 先刪除舊版本以及一些會有衝突的程式 for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done 安裝 # Add Docker's official GPG key: sudo apt-get update sudo apt-get install ca-certificates curl sudo

By Mars

podman

遷移 Podman 4 to Podman 5

今天把 Podman 4 升級到 Podman 5 後發現整個 Podman 壞掉了,後來查了一下官網發布的消息算是預期的,只能怪自己沒注意。 本來很想說有沒有辦法不用重建全部,但想想東西也都不重要就打算清乾淨就好,找到別人提供的步驟指令 1. wsl --export podman-machine-default podman-machine-default.tar 2. wsl --unregister podman-machine-default 3. rm ${Env:USERPROFILE}\.config\containers\podman\machine\wsl\podman-machine-default.json 4. rm ${Env:USERPROFILE}\.config\containers\podman\machine\wsl\podman-machine-default.lock 5. Repeat steps 1

By Mars