docker: Error response from daemon: cgroups: cannot find cgroup mount destination: unknown.

 

WSL2(Ubuntu)上でのDockerコンテナ起動時にcgroupのエラーが出るときがあります。

root@hoge:~# docker run –name web -d -p 10080:80 nginx:alpine
docker: Error response from daemon: cgroups: cannot find cgroup mount destination: unknown.
root@hoge:~#

ハードコーディングしても問題無い場合は、次のスクリプトを適当な名前で/etc/profile.dに置いて下さい。

root@hoge:~# cat /etc/profile.d/hoge.sh
#!/bin/sh
PASSWORD=suでrootになれるパスワード
if [ ! -d /sys/fs/cgroup/systemd ]; then
  echo $PASSWORD | sudo -S mkdir /sys/fs/cgroup/systemd 2>/dev/null
fi
mountpoint -q /sys/fs/cgroup/systemd || echo $PASSWORD | sudo -S mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/systemd

パスワードを残したく無い場合で、手打ちで対応出来る場合は、次のコマンドをWSL2起動の都度、叩いて下さい。

sudo mkdir /sys/fs/cgroup/systemd
mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/systemd

Folding@Homeクライアントのアップデートとプロジェクトの選び方

 

COVID-19が選べるようになりました

7.6.9が出たようです。

宿題として、COVID-19を選べるようになりました。

Windows版の場合、

Webクライアントでの設定

または

FAHControlからの設定

となります。

それ以外のクライアントは、config.xmlに

<!-- Folding Slot Configuration -->
<cause v='COVID_19'/>

を追加して下さい。


新規インストール

新規インストールは公式ページを参照
https://foldingathome.org/support/faq/installation-guides/linux/manual-installation-advanced/
ダウンロードリンクのみ、次のページのそれぞれと読み替えて下さい
https://foldingathome.org/alternative-downloads/


7.5.1からのアップデート(Windows版)

公式のダウンロードリンクから、クライアントをダウンロードして下さい。

普通に上書きインストール可です。


7.5.1からのアップデート(Ubuntu版)

cd ~
systemctl stop FAHClient
# 数秒待つ
# FAHClient停止確認
ps ax
# 停まっていなかったらkill
wget https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-64bit/v7.6/fahclient_7.6.9_amd64.deb
dpkg -i fahclient_7.6.9_amd64.deb
systemctl status FAHClient
systemctl stop FAHClient
# 数秒待つ
# FAHClient停止確認
ps ax
# 停まっていなかったらkill
# config.xmlに宿題の種類を設定
vi /etc/fahclient/config.xml
# config.xmlに以下を追加
<!-- Folding Slot Configuration -->
<cause v='COVID_19'/>
# 保存終了
# クライアント実行/状態確認
systemctl start FAHClient
systemctl status FAHClient
# プロセスが走っているのを確認
ps ax
# 進捗状況を確認(適当なところで^C)
tail -f /var/lib/fahclient/log.txt

7.5.1からのアップデート(CentOS 7版)

cd ~
/etc/rc.d/init.d/FAHClient stop
# 数秒待つ
# FAHClient停止確認
ps ax
# 停まっていなかったらkill
rpm -e fahclient-7.5.1-1.x86_64
wget https://download.foldingathome.org/releases/public/release/fahclient/centos-6.7-64bit/v7.6/fahclient-7.6.9-1.x86_64.rpm
rpm -i fahclient-7.6.9-1.x86_64.rpm
/etc/rc.d/init.d/FAHClient stop
# 数秒待つ
# FAHClient停止確認
ps ax
# 停まっていなかったらkill
# config.xmlに宿題の種類を設定
vi /etc/fahclient/config.xml
# config.xmlに以下を追加
<!-- Folding Slot Configuration -->
<cause v='COVID_19'/>
# 保存終了
# クライアント実行/状態確認
systemctl enable FAHClient
/etc/rc.d/init.d/FAHClient start
/etc/rc.d/init.d/FAHClient status
# プロセスが走っているのを確認
ps ax
# 進捗状況を確認(適当なところで^C)
tail -f /var/lib/fahclient/log.txt

Folding@homeインストール

 

コロナウィルス対策に少しでもお役に立てれば…。

以下、FAHClient 7.5.1 のインストール手順を記します。


CentOS 7

yum -y update
# 一旦再起動
shutdown -r now
yum install -y https://download.foldingathome.org/releases/public/release/fahclient/centos-6.7-64bit/v7.5/fahclient-7.5.1-1.x86_64.rpm
# 以下は必要に応じて
# 1~2分放置してから
vi /etc/fahclient/config.xml
/etc/init.d/FAHClient restart

Ubuntu 18.04 LTS

apt update && apt upgrade -y
apt install wget -y
wget https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-64bit/v7.5/fahclient_7.5.1_amd64.deb
dpkg -i --force-depends fahclient_7.5.1_amd64.deb
apt-get autoremove -y
apt install ocl-icd-opencl-dev -y
# 以下は必要に応じて
# 1~2分放置してから
vi /etc/fahclient/config.xml
systemctl restart FAHCleint

Azureにアカウントを作ってRedmineを入れてみるテスト

Azureの無償枠の中にUbuntu 18.04な仮想サーバを作り、SendGrid経由でメールが発報できるようにし、Redmineを立ち上げてみました。

以下、その手順となります。

尚、SSH鍵認証でログインする場合は、事前に公開鍵を用意しておいて下さい。

Azureアカウント作成とポータルへのログイン

※アカウントをお持ちの場合は、この項はパスして下さい

Arureの入口に行き、適当なメアドでアカウントを作成して下さい。

作成後、そのアカウントでサインインし、Azureポータルにサインインして下さい。

リソースグループ作成

次の手順でリソースグループを作成して下さい。

  1. メイン画面左ペインの『リソースグループ』をクリック
  2. 『+追加』をクリック
  3. サブスクリプション欄で『無料試用版』を選択
  4. リソースグループ欄に作成するリソースグループ名を入力
  5. リージョン欄は『(アジア太平洋)東日本』などを選択
  6. 『確認及び作成』をクリック

仮想ネットワーク作成

次の手順で仮想ネットワークを作成して下さい。

  1. メイン画面左ペインの『仮想ネットワーク』をクリック
  2. 『+追加』をクリック
  3. 名前欄に適当な名前を入力
  4. アドレス空間欄に、利用するアドレス空間を入力
    (例:10.0.0.0/16)
  5. サブスクリプション欄で『無料試用版』を選択
  6. リソースグループ欄で先程作成したリソースグループ名を選択
  7. 場所欄は『(アジア太平洋)東日本』などを選択
  8. サブネットの名前は適当に入力
  9. サブネットのアドレス範囲は、先程のアドレス空間内のものを入力
    (例:10.0.0.0/24)

仮想マシン作成

次の手順で仮想マシンを作成して下さい。

  1. メイン画面左ペインの『Virtual Machines』をクリック
  2. 『+追加』をクリック
  3. サブスクリプション欄で『無料試用版』を選択
  4. リソースグループ欄で先程作成したリソースグループ名を選択
  5. 仮想マシン名に作成する仮想マシンの名前を入力
  6. 地域欄は『(アジア太平洋)東日本』などを選択
  7. イメージ欄は作成するOSを選択
    今回はUbuntu 18.04としました
  8. サイズは作成する仮想マシンのリソースを選択
    無償枠で使えるB1sが良いと思います
  9. 認証の種類を選択(パスワードまたはSSH公開キー)
    • パスワード認証の場合
      1. ユーザ名欄に、認証に使用するユーザ名を投入
        ユーザ名の右側にチェックが付くことを確認
      2. パスワード欄およびパスワードの確認欄に、上記ユーザで使用するパスワードを投入
        それぞれの欄の右側にチェックマークが付くことを確認
    • SSH効果キー認証の場合
      1. ユーザ名は認証に使用するユーザ名を投入
        ユーザ名の右側にチェックマークが付くことを確認
      2. SSH公開キー認証の場合SSH公開キーは別途用意したSSH公開鍵をペースト
        SSH公開キー欄の右側にチェックマークが付くことを確認
  10. 『次:ディスク』をクリック
  11. ディスクの種類を選択
    HDDで良いと思います
  12. 『次:ネットワーク』をクリック
  13. 仮想ネットワーク欄で、先程作成した仮想ネットワーク名を選択
  14. サブネット欄で、先程作成したサブネットを選択
  15. 『次:管理』をクリック
  16. 診断ストレージアカウントは表示されている物を使用
    表示されていない場合、『新規作成』をクリック、名前欄に名前を入力し、『OK』をクリック
  17. 『確認および作成』をクリック
  18. エラーがなければ仮想サーバが作成されますので、しばし待ちます
    AWSやGCPに比べると、デプロイや削除は待たされる感じです
  19. 作成した仮想マシン名の状態が『実行中』になればok

FireWallの設定

デフォルト状態では外部からの接続が出来ないため、FireWallの設定を行います。

  1. 作成した仮想マシン名をクリック
  2. 『設定≫ネットワーク』をクリック
  3. 『受信ポートの規則を追加する』をクリックし、ルールを追加
    自分のグローバルIP(私はCMANさん等で調べています)をソースに、22/tcp,80/tcp,443/tcpあたりを追加すればよいでしょう

仮想サーバの環境設定

以下の手順は、Ubuntu 18.04な仮想サーバにsshで接続し、rootに昇格しての作業しています。

  1. タイムゾーン設定等
    timedatectl set-timezone Asia/Tokyo
    apt update
    apt -y upgrade
  2. IPv6抑制
    # sysctlでのipv6抑止
    cat <<'__EOF__' | tee -a /etc/sysctl.d/70-disable-ipv6.conf
    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv6.conf.default.disable_ipv6 = 1
    __EOF__
    # 反映
    sudo sysctl --system
    # スタートアップスクリプトでipv6抑止
    cat <<'__EOF__' | tee -a /etc/rc.local
    #!/bin/bash
    # /etc/rc.local
    # Load kernel variables from /etc/sysctl.d
    /etc/init.d/procps restart
    exit 0
    __EOF__
    # 実行権限を付与
    chmod 755 /etc/rc.local
  3. swap領域作成
    # swap領域作成
    fallocate -l 2G /swapfile
    chmod 600 /swapfile
    mkswap /swapfile
    swapon /swapfile
    echo "/swapfile none swap sw 0 0" >> /etc/fstab
  4. 一旦再起動
    # 一旦再起動
    shutdown -r now

仮想マシンからメールを発信する場合(Phase①)

Postfix設定を行います。

私はいつもこちらのお世話になっています。

Server World Postfix : インストール/設定2018

仮想マシンからメールを発信する場合(Phase②)

SendGridのアカウントが無い場合は、ここで作成します。既にお持ちの場合は、本項の1~11は飛ばして下さい。

  1. Azureコンソール上部の検索欄で、『sendgrid accounts』を検索します
  2. 『+追加』をクリック
  3. Name欄に適当な名前を入力
  4. Password欄とConfirm Password欄に適当なパスワードを入力
  5. サブスクリプション欄で『無料試用版』を選択
  6. リソースグループ欄で先程作成したリソースグループ名を選択
  7. Pricing tierで『Free』をクリック、『選択』をクリック
  8. Contact Informationで連絡先を入力し、『OK』をクリック
  9. 法律条項で『作成』をクリックすると、SendGridのアカウントが作成されます
  10. 作成されたSendGridの名前をクリック
  11. SettingペインのConfigurationsをクリック
  12. Username欄の右側のコピーアイコンをクリック
    先程投入したパスワードとともに、/etc/postfix/sasl_passwd に記録、DB化します
    # SendGrid用アカウントをpostfix側に指示
    cat <<'__EOF__' | tee -a vi /etc/postfix/sasl_passwd
    [smtp.sendgrid.net]:587 SendGrid画面でコピーしておいたUsername:そのときのパスワード
    __EOF__
    # sasl_passwdのDB化
    chmod 600 /etc/postfix/sasl_passwd
    postmap /etc/postfix/sasl_passwd

仮想マシンからメールを発信する場合(Phase③)

sasl_passwdをpostmapしたあとの作業です。

# PostfixでSendGridを利用する設定
cat <<'__EOF__' | tee -a /etc/postfix/main.cf
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_tls_security_level = encrypt
header_size_limit = 4096000
relayhost = [smtp.sendgrid.net]:587
__EOF__
sytemctl restart postfix

bitnami Redmineのインストール

  1. bitnami Redmineのダウンロードページに移動
    https://bitnami.com/stack/redmine/installer
  2. Download for Linux 64-bitボタンを右クリックして、ダウンロードリンクを取得
  3. 仮想サーバの置き場所にダウンロード
    4.0.3-3の場合の例
    cd ~
    wget https://bitnami.com/redirect/to/554708/bitnami-redmine-4.0.3-3-linux-x64-installer.run
    chmod 744 ./bitnami-redmine-4.0.3-3-linux-x64-installer.run
  4. インストーラを実行します
    ./bitnami-redmine-4.0.3-3-linux-x64-installer.run

    あとはインストーラの指示通りに進めます

  5. インストールが完了するまで待ちます
    次の表示が出たら、Enterキーを押してRedmineを起動して下さい
    —————————————————————————-
    セットアップウィザードによる Bitnami Redmine Stack のインストールが完了しました。

    Redmine アプリケーション起動 [Y/n]:Y

    情報: Bitnami Redmine Stack については、ブラウザで
    http://127.0.0.1:80 にアクセスしてください。
    続けるには [Enter] キーを押してください :

  6. ブラウザで http://Azureから割り振られたグローバルIP/ にアクセスし、Redmineの利用を開始して下さい