質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Redmine

Redmineは、プロジェクトのタスク管理、進捗管理、情報共有が可能な、 オープンソースプロジェクト管理ソフトウェアです。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

1回答

527閲覧

macOS Mojaveで vitual box+vagrant+centos7+dcoker+docker-composeを使い redmine構築で Operation not permitted

MShiryo

総合スコア5

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Redmine

Redmineは、プロジェクトのタスク管理、進捗管理、情報共有が可能な、 オープンソースプロジェクト管理ソフトウェアです。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2019/11/07 12:11

編集2019/11/07 14:25

前提・実現したいこと

macOS Mojave で
vitual box + vagrant + centos7 + dcoker + docker-compose を使い
redmine の構築を試しています。

発生している問題・エラーメッセージ

docker-compose up -d で起動まではできるものの、
docker logs でログを見ると

chown: changing ownership of 'files': Operation not permitted

など外部共有したいフォルダの権限変更ができない旨のメッセージが発生しており、
Restarting し続けてしまい redmine が起動できません。

試したこと

docmker-compose.yml に privileged: true を追記: 変化なし

version: '3.7' services: redmine: container_name: redmine image: redmine environment: REDMINE_DB_POSTGRES: redmine-db REDMINE_DB_PASSWORD: redmine REDMINE_DB_USERNAME: redmine REDMINE_DB_PASSWORD: redmine restart: always privileged: true ports: - 3000:3000 depends_on: - redmine-db volumes: - ./redmine/files:/usr/src/redmine/files - ./redmine/config:/usr/src/redmine/config redmine-db: container_name: redmine-db image: postgres . .

centosのselinuxをdisabled: 変化なし

[vagrant@localhost work]$ getenforce Disabled

centos7内で外部共有フォルダのグループに、コンテナ内のグループ追加:変化なし
(redmineコンテナ内の /etc/group の redmine = 999)

[vagrant@localhost work]$ sudo chown -R :999 redmine [vagrant@localhost work]$ sudo chown -R :999 redmine-db

docker-compose.yml の volumes をコメントアウト: 起動できるものの、外部共有できないのでNG

補足情報(FW/ツールのバージョンなど)

バージョンは下記の通りです。
virtual box : 6.0.14
vagrant : 2.2.6
centos7 : 1905.1
docker : 19.03.4
docker-compose : 1.24.1

インストール方法は下記の通りです。
virtual box : インストーラ
vagrant : インストーラ
centos7 : vagrant box add centos/7

vagrant :

cd /Users/xxxxx/vagrant/redmine_test vagrant init centos/7 vagrant plugin install vagrant-vbguest vagrant up

Vagrantfile :

Vagrant.configure("2") do |config| config.vm.box = "centos/7" config.vm.network "forwarded_port", guest: 3000, host: 3000 # ホストIPアドレス:3000 でRedmineアクセス config.vm.network "private_network", ip: "192.168.33.11" config.vm.synced_folder "./work", "/home/vagrant/work", type: "nfs", create:"true" config.vm.provider "virtualbox" do |v| v.memory = 4096 v.cpus = 2 end config.vm.provision :shell, :path => "provision/provision.sh", :privileged => false end

docker : (Vagrantfile の config.vm.provision の shell で実施)

sudo yum update -y echo 前提パッケージを導入 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 echo StableRepositoryを有効にする sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo echo container-selinuxインストール sudo yum install -y container-selinux echo docker-ceインストール sudo yum install -y docker-ce

docker-compose : (Vagrantfile の config.vm.provision の shell で実施)

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose

vagrant内の権限

[vagrant@localhost work]$ pwd /home/vagrant/work [vagrant@localhost work]$ ls -lRa .: 合計 4 drwxr-xr-x 6 501 games 192 11月 7 20:31 . drwx------. 4 vagrant vagrant 107 11月 7 20:28 .. -rw-rw-r-- 1 501 games 0 11月 7 20:28 aa.txt -rwxr-xr-x 1 501 games 980 11月 7 20:30 docker-compose.yml drwxr-xr-x 4 501 games 128 11月 7 20:31 redmine drwxr-xr-x 4 501 games 128 11月 7 20:31 redmine-db ./redmine: 合計 0 drwxr-xr-x 4 501 games 128 11月 7 20:31 . drwxr-xr-x 6 501 games 192 11月 7 20:31 .. drwxr-xr-x 2 501 games 64 11月 7 20:31 config drwxr-xr-x 2 501 games 64 11月 7 20:31 files ./redmine/config: 合計 0 drwxr-xr-x 2 501 games 64 11月 7 20:31 . drwxr-xr-x 4 501 games 128 11月 7 20:31 .. ./redmine/files: 合計 0 drwxr-xr-x 2 501 games 64 11月 7 20:31 . drwxr-xr-x 4 501 games 128 11月 7 20:31 .. ./redmine-db: 合計 0 drwxr-xr-x 4 501 games 128 11月 7 20:31 . drwxr-xr-x 6 501 games 192 11月 7 20:31 .. drwxr-xr-x 2 501 games 64 11月 7 20:31 data drwxr-xr-x 2 501 games 64 11月 7 20:31 initdb ./redmine-db/data: 合計 0 drwxr-xr-x 2 501 games 64 11月 7 20:31 . drwxr-xr-x 4 501 games 128 11月 7 20:31 .. ./redmine-db/initdb: 合計 0 drwxr-xr-x 2 501 games 64 11月 7 20:31 . drwxr-xr-x 4 501 games 128 11月 7 20:31 ..

以上です。どうかよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yurak

2020/01/22 17:13

docker-compose.yml の volumes をコメントアウト: 起動できるものの、外部共有できないのでNG とありましたが、 コメントアウトした時の/usr/src/redmine/filesの User:Permissionはredmine:redmineであっていますか? docker-composeで起動した場合はrootになる可能性があるため為念の確認になります。
MShiryo

2020/01/23 01:10 編集

はい、コメントアウトした場合のdockerコンテナ内の /usr/src/redmine/files は redmine:redmine です。 ``` vagrant上の環境からdockerコンテナへ docker exec -it redmineコンテナ bash pwd /usr/src/redmine ls -l drwxr-xr-x. 2 redmine redmine 6 Oct 21 16:42 files ```
guest

回答1

0

centos7内で./redmine を chmod 777 してください。
また、Macであればdcoker+docker-composeだけで永続化含めてredmineを試せますので、vitual box+vagrantでの問題を回避することも可能です。

参考:
http://wordpress.honobono-life.info/lin-base/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E3%83%91%E3%83%BC%E3%83%9F%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3%E8%A8%AD%E5%AE%9A%E3%80%81%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%AF/

投稿2020/01/23 13:19

yurak

総合スコア160

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

MShiryo

2020/01/23 15:10

回答ありがとうございます。 centos7内で./redmine を chmod 777 してみましたが、変わらず ``` chown: changing ownership of 'files': Operation not permitted ``` が発生してしまいました。 以下に手順を記載します。 ``` ・mac のコンソールから、vagrantを起動(vagrant up) ・vagrantのcentos7環境にssh接続(vagrant ssh) ・cd work ・pwd /home/vagrant/work ・sudo chmod 777 redmine ・ls -l drwxrwxrwx. 4 501 games 128 1月 23 23:42 redmine ・ls -lR redmine redmine: 合計 0 drwxr-xr-x. 2 501 games 64 1月 23 23:42 files drwxr-xr-x. 2 501 games 64 1月 23 23:42 plugins redmine/files: 合計 0 redmine/plugins: 合計 0 ・docker-compose up -d ・docker logs redmineコンテナ名 chown: changing ownership of 'files': Operation not permitted ``` なお./redmineだけでなく、その配下にもchmom 777 してみましたが、 同様の結果でした。 ``` ・cd redmine ・chmod 777 files plugins ・ls -l 合計 0 drwxrwxrwx. 2 501 games 64 1月 23 23:42 files drwxrwxrwx. 2 501 games 64 1月 23 23:42 plugins ``` macであればvitual box+vagrantでの問題を回避できるとのことですが、 vagrant上の環境でなんとかする方法がないかと思っています。 以上です
yurak

2020/01/23 15:17

/home/vagrantがvagrantユーザーでのみ編集可能な権限を持ってしまっていることが原因かもしれないです。 /homeからchown -R もしくは chmod -r 777 を実行して再度確認いただけないでしょうか。 参考: https://qiita.com/yyh-gl/items/cdc801b24717f9b1dcb0
MShiryo

2020/01/24 14:55

返信が遅くなりすみません。 変わらず、Operation not permittedが発生してしまいました。 ``` ・vagrant centos7環境にログイン ・cd ../ ・pwd /home ・ls -l 合計 0 drwx------. 4 vagrant vagrant 107 1月 23 23:42 vagrant ・chmod -r 777 vagrant chmod: `777' にアクセスできません: そのようなファイルやディレクトリはありません ・sudo chmod 777 vagrant/ ・ls -l 合計 0 drwxrwxrwx. 4 vagrant vagrant 107 1月 23 23:42 vagrant ・cd vagrant/work ・docker-compose up -d ・docker logs redmineコンテナ名 chown: changing ownership of 'files': Operation not permitted ※vagrant配下のworkもやりましたが、ダメでした。 ・cd ../ ・pwd /home/vagrant ・sudo chmod 777 work/ ・ls -l 合計 0 drwxrwxrwx. 12 501 games 384 1月 23 23:46 work ・cd work ・docker-compose up -d ・docker logs redmineコンテナ名 chown: changing ownership of 'files': Operation not permitted ``` 以上です。
yurak

2020/01/25 13:55 編集

vagrant up で ./work にマウントするようにVagrantfileに記載されています。 config.vm.synced_folder "./work", "/home/vagrant/work", type: "nfs", create:"true" MacOS側では ./work は作成されておらず、vagrant up 時に作成される設定となっていますので、 事前に作成のうえ、chmod 777 してみていただけますでしょうか。 cd /Users/xxxxx/vagrant/redmine_test  ← workフォルダなし?
MShiryo

2020/01/26 15:22 編集

vagrantへのsshログインができなくなってしまったので、 一度削除をしております。 またworkフォルダは、先に作成していたと記憶しています。 今回一度vagrant destroy したので、どちらにしても Workフォルダが先に存在した状態になっています。 なお結論としては、やはりできませんでした。 ``` ※ログインできない状態 ・vagrant ssh vagrant@127.0.0.1: Permission denied (publickey,gssapi-keyex,gssapi-with-mic). ``` たぶんですが、下記を行うと出来なくなってしまったので、 そこはやらない状態から進めています。 ``` ・sudo chmod 777 vagrant/ ・ls -l 合計 0 drwxrwxrwx. 4 vagrant vagrant 107 1月 23 23:42 vagrant ``` 前置きが長くなってしまいすみません。 vagrant destroy の後、行なった操作は 下記になります。 ``` ・Vagrantfileを修正 config.vm.synced_folder "./work", "/home/vagrant/work", type: "nfs", create:"true" →config.vm.synced_folder "./work", "/home/vagrant/work", type: "nfs" ・pwd /Users/xxxxx/vagrant/redmine_test ・chmod 777 work ・ls -l -rw-rw-r--@ 1 xxxxx staff 4421 1 26 22:46 Vagrantfile drwxrwxrwx 12 xxxxx staff 384 1 26 23:12 work ・ls -l work -rw-rw-r-- 1 xxxxx staff 652 1 23 23:45 docker-compose.yml drwxrwxrwx 4 xxxxx staff 128 1 23 23:42 redmine ・ls -l work/redmine drwxrwxrwx 2 xxxxx staff 64 1 23 23:42 files drwxrwxrwx 2 xxxxx staff 64 1 23 23:42 plugins ・vagrant起動、ログイン ・cd ../ ・pwd /home ・ls -lR .: drwx------. 4 vagrant vagrant 107 1月 26 23:37 vagrant ※ここで sudo chmod 777 vagrant をすると、再ログインができなくなりましたのでそのままです。 ./vagrant: drwxrwxrwx 12 501 games 384 1月 26 23:12 work ./vagrant/work: drwxrwxrwx 4 501 games 128 1月 23 23:42 redmine ./vagrant/work/redmine: drwxrwxrwx 2 501 games 64 1月 23 23:42 files drwxrwxrwx 2 501 games 64 1月 23 23:42 plugins ・cd vagrant/work ・docker-compose up -d ・docker logs redmineコンテナ名 chown: changing ownership of 'files': Operation not permitted ``` vagrantへのchmod 777 をしていないので、 教えていただいた通りにできていない状態で申し訳ありません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問