0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ubuntu 24.04のサーバ版でもブラウザを使いたい!

Last updated at Posted at 2025-09-29

最初に

https://github.com/jlesage/docker-firefox を参考に進めていく。
ブラウザ経由でダウンロードしたデータをリモートサーバーにアップロードしたいとき、手元PCを経由するのが二度手間なので、リモートサーバーで直接ダウンロードしたい諸君に送る。

jlesage/docker-firefox を使って「日本語表示」かつ「ダウンロード先 = ~/docker/firefox/download」にする手順

前提

  • remote-host-nameremote-host-name と記述します(例: ssh remote-host-name)。
  • Docker は remote-host-name 上で利用可能。
  • ローカルPC(Windowsなど)からブラウザはローカルで開き、SSHポートフォワーディングで remote-host-name 上のコンテナに接続します。

1) remote-host-name 上で作業用ディレクトリを作成

ssh remote-host-name
mkdir -p ~/docker/firefox/{config,download}

2) コンテナ起動(日本語化 + ダウンロード先マウント)

既定のダウンロード先 /config/downloads に、ホストの ~/docker/firefox/download をマウントします。
UI 言語と CJK フォントを有効化し、about:config 相当の初期値を FF_PREF_* で設定します。

# ※ ここから先は remote-host-name にログイン済みのシェルで実行
docker rm -f firefox 2>/dev/null || true

docker run -d   --name=firefox   -p 5800:5800   -e TZ=Asia/Tokyo   -e LANG=ja_JP.UTF-8   -e LC_ALL=ja_JP.UTF-8   -e ENABLE_CJK_FONT=1   -e INSTALL_PACKAGES="font-noto-cjk"   -e FF_PREF_UI='intl.locale.requested="ja-JP"'   -e FF_PREF_ACCEPT='intl.accept_languages="ja,ja-JP,en-US,en"'   -e USER_ID=$(id -u)   -e GROUP_ID=$(id -g)   -v ~/docker/firefox/config:/config:rw   -v ~/docker/firefox/download:/config/downloads:rw   jlesage/firefox

3) ローカルPC → remote-host-name へのポートフォワーディング

コンテナの Web UI(noVNC)は 5800/tcp。ローカル側を 15800 に載せ替えます。

# ローカルPCのターミナルで実行(フォワード中は開いたままにする)
ssh -N -L 127.0.0.1:15800:localhost:5800 remote-host-name

毎回 -L を書きたくない場合:SSH設定の Host remote-host-name 節に
LocalForward 15800 localhost:5800 を1行追加し、以後は ssh -N remote-host-name だけでOK。


4) ブラウザでアクセス(ローカルPC)

http://localhost:15800/

Firefox の UI が表示されれば成功。


5) ダウンロード先の確認(remote-host-name 上)

ls -l ~/docker/firefox/download

Firefox から保存したファイルがここに見えればOK。


6) トラブルシュート(要点)

  • 文字が豆腐(□)になる
    ENABLE_CJK_FONT=1font-noto-cjk の導入を確認。必要ならコンテナ再作成(rm -frun)。
  • 日本語 UI にならない / 言語優先が効かない
    FF_PREF_UI/FF_PREF_ACCEPT のダブルクォート崩れを確認。FF_PREF_* は "..." が必須(文字列型)。再作成で反映。
  • 保存権限エラー
    USER_ID/GROUP_ID を付与。既存ファイルは chown -R $(id -u):$(id -g) ~/docker/firefox で修正。
  • ポート競合
    -p 5800:5800 が衝突するならホスト側だけ変える(例:-p 8580:5800)。この場合、フォワードも 127.0.0.1:15800:localhost:8580 に合わせる。

7) (任意)docker-compose で運用する最小例

version: "3.8"
services:
  firefox:
    image: jlesage/firefox
    container_name: firefox
    ports:
      - "5800:5800"
    environment:
      TZ: Asia/Tokyo
      LANG: ja_JP.UTF-8
      LC_ALL: ja_JP.UTF-8
      ENABLE_CJK_FONT: "1"
      INSTALL_PACKAGES: "font-noto-cjk"
      FF_PREF_UI: 'intl.locale.requested="ja-JP"'
      FF_PREF_ACCEPT: 'intl.accept_languages="ja,ja-JP,en-US,en"'
      USER_ID: "${UID:-1000}"
      GROUP_ID: "${GID:-1000}"
    volumes:
      - ~/docker/firefox/config:/config:rw
      - ~/docker/firefox/download:/config/downloads:rw
    restart: unless-stopped
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?