Nik*_*kar 4 linux macos elasticsearch docker
我试图使用 docker 运行elasticsearch。并希望使用卷来保存数据。这是我使用的命令。
docker run -it --rm -v $(pwd)/elasticdata:/usr/share/elasticsearch/data elasticsearch:7.5.1
Run Code Online (Sandbox Code Playgroud)
这在我的 Mac 上运行良好。但是当我尝试在 Travis CI 中运行它时,它失败了,权限被拒绝/usr/share/elasticsearch/data/目录权限被拒绝。
这是我注意到 OSX 与 Linux 上 docker 卷的权限不一致的情况
OSX (Docker 版本 19.03.8,构建 afacb8b)
$ ls -l elasticdata/.keepme
-rw-r--r-- 1 nikhil staff 0 Apr 3 13:07 elasticdata/.keepme
$ docker run -it --rm -v $(pwd)/elasticdata:/usr/share/elasticsearch/data elasticsearch:7.5.1 namei -l /usr/share/elasticsearch/data/.keepme
f: /usr/share/elasticsearch/data/.keepme
drwxr-xr-x root root /
drwxr-xr-x root root usr
drwxr-xr-x root root share
drwxrwxr-x elasticsearch root elasticsearch
drwxr-xr-x root root data
-rw-r--r-- root root .keepme <---------------- owned by root!
Run Code Online (Sandbox Code Playgroud)
Ubuntu (Docker 版本 18.06.1-ce,内部版本 e68fc7a)
$ namei -l elasticdata/.keepme
f: elasticdata/.keepme
drwxrwxr-x nowalekar nowalekar elasticdata
-rw-rw-r-- nowalekar nowalekar .keepme
$ docker run -it --rm -v $(pwd)/elasticdata:/usr/share/elasticsearch/data elasticsearch:7.5.1 namei -l /usr/share/elasticsearch/data/.keepme
f: /usr/share/elasticsearch/data/.keepme
drwxr-xr-x root root /
drwxr-xr-x root root usr
drwxr-xr-x root root share
drwxrwxr-x elasticsearch root elasticsearch
drwxrwxr-x 1013 1013 data
-rw-rw-r-- 1013 1013 .keepme
Run Code Online (Sandbox Code Playgroud)
这种不一致是预期的吗?
我是否点击了这个:http://turnoff.us/geek/before-devops-after-devops/?
| 归档时间: |
|
| 查看次数: |
3948 次 |
| 最近记录: |