質問編集履歴
2
ログを解析して、質問内容を変更
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
docker stackをdeployしようとした時に、file not foundになってしまう
|
body
CHANGED
@@ -1,34 +1,67 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
3
|
現在、k8sを使ってTodoアプリを作成してみようと思い、DBの作成を行っています。
|
4
|
+
その時に、mysql.cnfにserver-idを設定する用のshell scriptを書き、server-idを一意に決めたい。
|
4
5
|
|
5
6
|
### 発生している問題・エラーメッセージ
|
6
|
-
テーブルを作成するSQLをSQLファイルに記述したのですが、syntax errorが表示されてうまくdbを作成できない状況となっています。
|
7
|
+
~~テーブルを作成するSQLをSQLファイルに記述したのですが、syntax errorが表示されてうまくdbを作成できない状況となっています。~~
|
7
8
|
|
9
|
+
もとはSQLのエラーだと思っていたのですが、改めてdocker serviceのログを参照してみると、add-server-id.shが見るからないと表示されていることがわかりました。
|
10
|
+
ということは、設定したpathが変になっている??と思うのですが、それがどこが変なのかわからないのでご教授いただきたいです。
|
11
|
+
|
8
|
-
```
|
12
|
+
```bash
|
9
|
-
Incorrect syntax near 'UNSIGNED'.'
|
10
|
-
Incorrect syntax near '188'. Expecting '(', or SELECT.
|
11
|
-
|
13
|
+
$ docker exec -it manager docker service logs kmiosg06sg2w [11:05:44]
|
12
|
-
|
14
|
+
todo_mysql_master.1.iet43na698h4@9d9629c9e6dc | !! exec: "add-server-id.sh": executable file not found in $PATH
|
15
|
+
todo_mysql_master.1.vacgbuxmhpd8@9d9629c9e6dc | !! exec: "add-server-id.sh": executable file not found in $PATH
|
16
|
+
todo_mysql_master.1.ms5joug8lki4@9d9629c9e6dc | !! exec: "add-server-id.sh": executable file not found in $PATH
|
17
|
+
todo_mysql_master.1.ifedudbqy6rb@9d9629c9e6dc | !! exec: "add-server-id.sh": executable file not found in $PATH
|
13
18
|
```
|
14
19
|
|
15
20
|
### 該当のソースコード
|
21
|
+
dockerfileはしたの様に記述しています。
|
22
|
+
```Dockerfile
|
23
|
+
FROM mysql:5.7
|
16
24
|
|
17
|
-
```sql
|
18
|
-
|
25
|
+
RUN apt-get update
|
26
|
+
RUN apt-get install -y wget telnet
|
27
|
+
RUN wget https://github.com/progrium/entrykit/releases/download/v0.4.0/entrykit_0.4.0_linux_x86_64.tgz
|
19
|
-
|
28
|
+
RUN tar -xvzf entrykit_0.4.0_linux_x86_64.tgz
|
29
|
+
RUN rm entrykit_0.4.0_linux_x86_64.tgz
|
20
|
-
|
30
|
+
RUN mv entrykit /usr/local/bin/
|
31
|
+
RUN entrykit --symlink
|
32
|
+
|
33
|
+
ADD add-server-id.sh /usr/local/bin/
|
21
|
-
|
34
|
+
ADD init-data.sh /usr/local/bin/
|
22
|
-
|
35
|
+
ADD etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/mysql.conf.d/
|
23
|
-
|
36
|
+
ADD prepare.sh /docker-entrypoint-initdb.d
|
24
|
-
updated DATETIME NOT NULL COMMENT '更新時間',
|
25
|
-
|
37
|
+
ADD sql /sql
|
38
|
+
|
39
|
+
ENTRYPOINT [ \
|
40
|
+
"prehook", \
|
41
|
+
"add-server-id.sh", \
|
42
|
+
"--", \
|
26
|
-
|
43
|
+
"docker-entrypoint.sh" \
|
44
|
+
]
|
45
|
+
|
46
|
+
CMD ["mysqld"]
|
27
47
|
```
|
28
48
|
|
49
|
+
全体のディレクトリ構成は以下のようになっています。
|
50
|
+
```
|
51
|
+
swarm-sample
|
29
|
-
|
52
|
+
|-etc/
|
53
|
+
| └mysql/
|
30
|
-
|
54
|
+
| └mysql.conf.d/
|
55
|
+
| └mysqld.cnf
|
56
|
+
|-stack/
|
57
|
+
| └todo-mysql.yml
|
58
|
+
|-Dockerfile
|
59
|
+
|-add-server-id.sh
|
60
|
+
|-init-data.sh
|
61
|
+
|-prepare.sh
|
62
|
+
```
|
31
63
|
|
64
|
+
|
32
65
|
### 補足情報(FW/ツールのバージョンなど)
|
33
66
|
|
34
67
|
使用したmysqlのdocker image→ mysql:5.7
|
1
タグを追加
title
CHANGED
File without changes
|
body
CHANGED
File without changes
|