Help us understand the problem. What is going on with this article?

dockerでGitLab導入時に「Operation not permitted」と言われた話

More than 1 year has passed since last update.

はじめに

GitLabをできるだけ手軽に導入したいと思い、Dockerを使った導入方法を試してみることにした。
しかし、自分のDockerに関する知識が不足しており、はまったところがあったので、メモがてらに投稿。

エラー内容

公式の手順どおり、

$ wget https://raw.githubusercontent.com/sameersbn/docker-gitlab/master/docker-compose.yml
$ docker-compose up

してみると、

gitlab_1 | chmod: changing permissions of '/home/git/data': Operation not permitted

こんなエラーが何個も出ている。 …という状況。

解決方法

まず、前提として、/home/git/dataはコンテナ側のパスであり、これに結び付けられているホスト側でのパスは/srv/docker/gitlabである。(公式がこのように指定している)

が、/srvディレクトリ配下を編集する権限がないために、 Operation not permittedと言われているわけである。

したがって、適切な権限を付与すれば動くはず。
だがしかし、めんどくさがりな僕は
/srv配下ではなく、/Users/(ユーザ名)配下で作業することで、今回のエラーを回避。

つまり、docker-compose.ymlを以下のとおり3箇所修正しました。
(今回はテスト的に導入してみたため、Desktop配下に設置しています。)

version: '2'

services:
  redis:
    restart: always
    image: sameersbn/redis:4.0.9-1
    command:
    - --loglevel warning
    volumes:
    # - /srv/docker/gitlab/redis:/var/lib/redis:Z    # 本来左記のようになっているのを
    - /Users/(ユーザ名)/Desktop/gitlab/redis:/var/lib/redis:Z    # Users配下に変更

  postgresql:
    restart: always
    image: sameersbn/postgresql:10
    volumes:
    # - /srv/docker/gitlab/postgresql:/var/lib/postgresql:Z    #ここも同様
    - /Users/(ユーザ名)/Desktop/gitlab/postgresql:/var/lib/postgresql:Z
    environment:
    - DB_USER=gitlab
    - DB_PASS=password
    - DB_NAME=gitlabhq_production
    - DB_EXTENSION=pg_trgm

  gitlab:
    restart: always
    image: sameersbn/gitlab:11.1.4
    depends_on:
    - redis
    - postgresql
    ports:
    - "10080:80"
    - "10022:22"
    volumes:
    # - /srv/docker/gitlab/gitlab:/home/git/data:Z    # ここも同様
    - /Users/(ユーザ名)/gitlab/gitlab:/home/git/data:Z
    environment:
    - DEBUG=false

    ~以下省略~

結果

スクリーンショット 2018-08-25 15.05.45.png

はい、表示されました😊

追記(2018/11/18)

個人ブログ始めました。
よかったらこちらもどうぞ!

yyh-gl
東京でエンジニアしてます/CLI名刺 $ npx yyh-gl/メインは個人ブログです📝
https://yyh-gl.github.io/tech-blog/
dmmcom
総合エンタテイメントサイト「DMM.com」を運営。会員数は2,900万人を突破。動画配信、FX、英会話、ゲーム、太陽光発電、3Dプリンタなど40以上のサービスを展開。沖縄での水族館事業参入、ベルギーでのサッカークラブ経営など、様々な事業を手掛ける。また2018年より若手起業家の支援を強化、「DMM VENTURES」による出資や、M&Aなどを積極的に展開している。
https://dmm-corp.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away