Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
Cozyのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Cozy
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:インターネットアプリケーション]] [[en:Cozy]] {{Related articles start}} {{Related|バックアッププログラム}} {{Related articles end}} [https://cozy.io Cozy] は [[Node.js]] で書かれた、フリーなセルフホストの個人用クラウドプラットフォームです。 個人的なクラウドの利用を簡単にしてプライバシーをユーザーの手に取り戻すことを標榜しています。アプリケーションの基本機能としてファイルや画像を保存したり、連絡先やカレンダーをメールクライアントと共有・同期できます。 マーケットプレイスからサードパーティ製のアプリを入手することができ Cozy のデフォルト機能を拡張して、タスク管理やブログ運営、銀行口座の管理などをすることも可能です。 == インストール == === 依存パッケージ === Cozy をインストールするにはまず依存パッケージを[[インストール]]してください。疑似パッケージである {{AUR|cozy-deps}} をインストールすることで必要なパッケージを全てインストールできます。 手動で必要なパッケージを全てインストールすることもできます: {{Pkg|ca-certificates}}, {{Pkg|couchdb}}, {{Pkg|bash}}, {{Pkg|curl}}, {{Pkg|git}}, {{Pkg|imagemagick}}, {{Pkg|coffee-script}}, {{Pkg|openssl}}, {{Pkg|libxml2}}, {{Pkg|libxslt}}, {{Pkg|sqlite}}。 {{Note|{{AUR|cozy-deps}} を使うにしろ使わないにしろ Node.js のバージョン 6.x または 7.x がインストールされます。Cozy は公式にはサポートしていないバージョンですが、全く問題なく動作します。Cozy が公式にサポートしているのは Node.js v4.x だけ、{{AUR|nodejs-lts-bin}} パッケージでインストールできます。Arch Linux の公式リポジトリに含まれている最新版の Node.js を使いたい場合、{{pkg|npm}} が必要です。}} === インストール前の設定 === Cozy のベースコンポーネントをインストールする必要があります: # npm install -g cozy-controller # npm install -g cozy-monitor また、Cozy は3つのユーザーアカウントを必要とします: # useradd -MU cozy # useradd -MU cozy-data-system # useradd -MU cozy-home さらに {{ic|/etc/cozy}} リポジトリを作成して、所有者を {{ic|cozy}} ユーザーにする必要があります。 === CouchDB の設定 === 次にデータベースを設定します。Cozy は全てを [[CouchDB]] データベースに保存するため、データベースを管理するための CouchDB の管理者が必要です。管理者の認証情報を {{ic|/etc/cozy/couchdb.login}} に配置することで Cozy は管理者アカウントを使用します。 管理者を作成するには、まず ({{pkg|pwgen}} などを使って) 認証情報を生成して、保存し、CouchDB に送信してください。ファイルには適切な権限を与える必要があります: {{Note|以下の curl コマンドは Arch Linux の公式リポジトリに含まれている CouchDB のバージョン '''2.0''' 以上でのみ機能します。}} # pwgen -1 > /etc/cozy/couchdb.login # pwgen -1 >> /etc/cozy/couchdb.login # chown cozy-data-system /etc/cozy/couchdb.login # chmod 640 /etc/cozy/couchdb.login # curl 127.0.0.1:5984/_cluster_setup -Hcontent-type:application/json -d "{\"action\":\"enable_cluster\", \"username\":\"$(head -n1 /etc/cozy/couchdb.login)\", \"password\":\"$(tail -n1 /etc/cozy/couchdb.login)\", \"bind_address\":\"0.0.0.0\"}" # curl $(head -n1 /etc/cozy/couchdb.login):$(tail -n1 /etc/cozy/couchdb.login)@127.0.0.1:5984/_cluster_setup -XPOST -Hcontent-type:application/json -d '{"action":"finish_cluster"}' === コントローラの起動 === Cozy を使うにはコントローラ (cozy-controller) を立ち上げる必要があります。バックグラウンドタスクとして実行するものなので、systemd で起動するのが好ましいでしょう。以下の {{ic|/etc/systemd/system/cozy-controller.service}} ファイルを作成してください: {{hc|1=/etc/systemd/system/cozy-controller.service|2=[Unit] Description=Cozy Controller [Service] Environment=NODE_ENV=production Environment=USE_SYSLOG=true Environment=WEBOOB_PYTHON_PATH=/usr/share/cozy-weboob/lib/python2.7/site-packages Environment=WEBOOB_DIR=/usr/share/cozy-weboob/lib/python2.7/site-packages ExecStart=/usr/bin/cozy-controller [Install] WantedBy=multi-user.target}} === コントローラの設定ファイルを作成 === Cozy のコントローラは {{ic|/etc/cozy/controller.json}} に置かれた JSON の設定ファイルを使います。ファイルが存在しない場合、コントローラはデフォルト値を使用します。デフォルトの設定では {{pkg|supervisor}} を使って再起動を行います。systemd を使用してコントローラを起動・停止するために、以下のように JSON ファイルを作成して適切な再起動コマンドを設定する必要があります: {{hc|1=/etc/cozy/controller.json|2={ "restart_cmd": "/bin/systemctl restart cozy" } }} 以下を実行することでファイルの所有者を cozy にすることができます: # chown cozy:cozy /etc/cozy/controller.json {{Note|{{ic|controller.json}} で設定できる他のパラメータについては [https://github.com/babolivier/cozy-controller/blob/master/doc/config.md こちら] を参照。}} === Cozy スタックのインストール === Cozy モニターを使用して Cozy のベーススタックの各コンポーネントをインストール・起動することができます: # cozy-monitor install data-system # cozy-monitor start data-system # cozy-monitor install home # cozy-monitor start home # cozy-monitor install proxy # cozy-monitor start proxy === 設定 === Cozy にはユーザーがアクセスするドメインの名前やバックグラウンドなどの基本的な設定が必要です。 ==== ドメインの設定 ==== # coffee /usr/local/cozy/apps/home/commands.coffee setdomain <your domain> {{Note|Cozy では特定のドメイン (あるいはサブドメイン) を使用することが推奨されています (例: {{ic|cozy.example.tld}})。}} ==== バックグラウンドの設定 ==== # curl -X POST http://localhost:9103/api/instance -H "Content-Type: application/json" -d '{"background":"background-07"}' {{Note|Cozy インスタンスの "Settings" ページで設定はいつでも変えられます。}} == リバースプロキシ == セキュリティ上、Cozy は HTTPS を使ってアクセスするべきであり、リバースプロキシを必要とします。[[HAproxy]] などのプロキシソフトウェアを使用するか [[Apache]], [[nginx]], [https://caddyserver.com/ Caddy] などのウェブサーバーを使用してください。 さらに、自己署名証明書か、認証局から入手した SSL 証明書が必要です。 以下は一般的なウェブサーバーでの設定ファイルの例です。 === Apache === {{hc|1=/etc/httpd/conf/extra/cozy.conf|2=<IfModule mod_ssl.c> <VirtualHost *:443> ServerName cozy.example.tld ServerAdmin admin@server SSLEngine On SSLCertificateFile /etc/cozy/server.crt SSLCertificateKeyFile /etc/cozy/server.key RewriteEngine On RewriteCond %{REQUEST_URI} ^/.*socket\.io [NC] RewriteCond %{THE_REQUEST} websocket [NC] RewriteRule /(.*) ws://127.0.0.1:9104/$1 [P,L] ProxyPass / http://127.0.0.1:9104/ retry=0 Keepalive=On timeout=1600 ProxyPassReverse / http://127.0.0.1:9104/ setenv proxy-initial-not-pooled 1 CustomLog /var/log/apache2/cozy-access.log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" ErrorLog /var/log/apache2/cozy-error.log </VirtualHost> <VirtualHost *:80> ServerName cozy.example.tld ServerAdmin admin@server Redirect permanent / https://cozy.example.tld/ </VirtualHost> </IfModule>}} === nginx === {{hc|1=/etc/nginx/cozy.conf|2=server { listen 443; server_name cozy.example.tld; ssl_certificate /etc/cozy/server.crt; ssl_certificate_key /etc/cozy/server.key; ssl_dhparam /etc/cozy/dh.pem; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ALL:!aNULL:!eNULL:!LOW:!EXP:!RC4:!3DES:+HIGH:+MEDIUM; ssl_prefer_server_ciphers on; ssl on; gzip_vary on; client_max_body_size 1024M; add_header Strict-Transport-Security max-age=2678400; location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect http:// https://; proxy_pass http://127.0.0.1:9104; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } access_log /var/log/nginx/cozy.log; } # Always redirect http:// to https:// server { listen 80; server_name cozy.example.tld; return 301 https://$host$request_uri; } }} {{Note|{{ic|/etc/nginx/nginx.conf}} から {{ic|/etc/nginx/cozy.conf}} を include してください。}} === Caddy === {{hc|1=/etc/caddy/Caddyfile|2=cozy.example.tld { tls admin@server proxy / 127.0.0.1:9104 { transparent websocket } } }} == トラブルシューティング == === CouchDB 2.x === CouchDB 2.0 のアップデートによって問題が発生する場合があります。 ==== 古いバージョンからのアップデート ==== CouchDB をバージョン 1.x から 2.x に更新すると、CouchDB のシャーディングによって Cozy が動作しなくなることがあります (Cozy はシャーディングをまだサポートしていません)。アップデートによってデフォルトのデータベースディレクトリが変わってしまうため、Cozy のデータベースが CouchDB から認識されなくなります。以下は Cozy をまた動作できるようにする手順です: * {{ic|couchdb}} サービスを停止してください。{{ic|/var/lib/couchdb/cozy.couch}} をどこかにバックアップして {{ic|/var/lib/couchdb}} 下のファイルを全て削除してください (CouchDB を Cozy 以外のアプリケーションに使っている場合は簡単に削除しないでください。その場合、ディレクトリに含まれているファイルをチェックしてから、全てのデータベースを正しい手順で移行してください)。 * {{ic|/etc/couchdb/local.ini}} を編集して以下を追加: {{hc|1=/etc/couchdb/local.ini|2=[cluster] q=1 n=1 }} * {{ic|couchdb}} サービスを起動してください。{{ic|/var/lib/couchdb}} に再度ファイルが作成されます (例: {{ic|/var/lib/couchdb/shards/00000000-ffffffff/cozy.<unix time of creation>.couch}})。 * {{ic|couchdb}} サービスを停止して、バックアップした {{ic|cozy.couch}} を {{ic|/var/lib/couchdb/shards/00000000-ffffffff/cozy.<unix time of creation>.couch}} にコピーしてください。 * {{ic|couchdb}} サービスを起動したら全てが問題なく動作するはずです。
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Broken package link
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:META Related articles start
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:Related
(
ソースを閲覧
)
テンプレート:Related articles end
(
ソースを閲覧
)
テンプレート:Related articles start
(
ソースを閲覧
)
Cozy
に戻る。
検索
検索
Cozyのソースを表示
話題を追加