質問するログイン新規登録

質問編集履歴

2

各Dockerfileを追記

2019/01/31 01:59

投稿

toitoitoi
toitoitoi

スコア28

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,27 @@
1
- docker-composeで作ったCakePHPの環境があります。(docker-compose.yml を下記に示します)
1
+ docker-composeで作ったCakePHPの環境があります。
2
2
 
3
+ この環境でReact.jsも使えるようにしたいです。
4
+
5
+
6
+ そのために`phpfpm`コンテナに`npm`をインストールしたいのですが
7
+ **`yum`コマンドが存在しないため**困っています。(以下のようになります)
8
+ ```
9
+ /var/www/html/app # yum -y install nodejs
10
+ sh: yum: not found
11
+ ```
12
+
13
+
14
+ そもそも`npm install`するのは`phpfpm`コンテナで合っているのでしょうか。
15
+ また、`yum`のインストール方法が調べてもわかりませんでした。
16
+
17
+ どのようにしたらよいか教えていただきたいです。
18
+
19
+
20
+
21
+ ※docker-compose.yml と各Dockerfileは以下のとおりです。
22
+
3
- ```docker-compose.yml
23
+ [docker-compose.yml]
24
+ ```
4
25
  version: '2'
5
26
  services:
6
27
  mysql:
@@ -57,19 +78,39 @@
57
78
  - mysql
58
79
  - phpfpm
59
80
  ```
60
-
61
- この環境でReact.jsも使えるようにしたいです。
62
-
63
-
64
- そのために`phpfpm`コンテナに`npm`をインストールしたいのですが
65
- **`yum`コマンドが存在しないため**困っています。(以下のようになります)
81
+ [./data/mysql/Dockerfile]
66
82
  ```
83
+ FROM mysql:5.7
84
+ RUN usermod -u 1000 mysql
67
- /var/www/html/app # yum -y install nodejs
85
+ RUN mkdir -p /var/run/mysqld && \
68
- sh: yum: not found
86
+ chmod -R 777 /var/run/mysqld
69
87
  ```
88
+ [./data/phpfpm/Dockerfile]
89
+ ```
90
+ FROM php:7-fpm-alpine
91
+ RUN set -x && \
92
+ apk add --no-cache icu-libs && \
93
+ apk add --no-cache --virtual build-dependencies icu-dev && \
94
+ NPROC=$(grep -c ^processor /proc/cpuinfo 2>/dev/null || 1) && \
95
+ docker-php-ext-install -j${NPROC} intl && \
96
+ docker-php-ext-install -j${NPROC} pdo_mysql && \
97
+ apk del --no-cache --purge build-dependencies && \
98
+ rm -rf /tmp/pear
99
+ RUN set -x && \
100
+ deluser www-data && \
101
+ addgroup -g 50 -S www-data && \
102
+ adduser -u 1000 -D -S -G www-data www-data
103
+ ```
104
+ [./data/htdocs]
105
+ ```
106
+ FROM php:7.0-apache
107
+ RUN apt-get update && apt-get install -y --no-install-recommends \
108
+ nano \
109
+ libicu-dev \
110
+ && rm -rf /var/lib/apt/lists/*
70
111
 
71
-
112
+ WORKDIR /root
72
- そもそも`npm install`するのは`phpfpm`コンテナで合っているのでしょうか。
113
+ RUN docker-php-ext-install intl pdo pdo_mysql
73
- また、`yum`のインストール方法が調べてもわかりませんでした。
114
+ CMD $PRJ/bin/cake server -H 0.0.0.0 -p 80
74
-
75
- どのようにしたらよいか教えていただきたいです。
115
+ EXPOSE 80
116
+ ```

1

「yumコマンドが存在しない」の確認方法を追記。docker-compose.ymlを追記。

2019/01/31 01:59

投稿

toitoitoi
toitoitoi

スコア28

title CHANGED
File without changes
body CHANGED
@@ -1,22 +1,74 @@
1
- docker-composeで作ったCakePHPの環境があります。
1
+ docker-composeで作ったCakePHPの環境があります。(docker-compose.yml を下記に示します)
2
2
 
3
+ ```docker-compose.yml
4
+ version: '2'
5
+ services:
3
- コンテナ一覧
6
+ mysql:
7
+ restart: always
8
+ build: ./data/mysql/
9
+ volumes:
10
+ - "./data/mysql/db:/var/lib/mysql"
11
+ environment:
12
+ MYSQL_ROOT_PASSWORD: password
13
+ MYSQL_USER: my_app
14
+ MYSQL_PASSWORD: secret
15
+ MYSQL_DATABASE: my_app
16
+ TZ: "Asia/Tokyo"
17
+ ports:
18
+ - "3307:3306"
19
+ nginx:
20
+ restart: always
21
+ image: "nginx:mainline-alpine"
22
+ ports:
23
+ - "80:80"
24
+ - "443:443"
25
+ volumes:
26
+ - "./data/nginx/conf:/etc/nginx/"
27
+ - "./data/htdocs:/var/www/html"
28
+ environment:
29
+ TZ: "Asia/Tokyo"
30
+ depends_on:
31
+ - phpfpm
32
+ links:
33
+ - phpfpm
34
+ phpfpm:
35
+ build: ./data/phpfpm/
36
+ environment:
37
+ TZ: "Asia/Tokyo"
38
+ volumes:
39
+ - "./data/htdocs:/var/www/html"
40
+ depends_on:
41
+ - mysql
42
+ links:
43
+ - mysql
44
+ host:
45
+ build: ./data/htdocs
46
+ environment:
47
+ TZ: "Asia/Tokyo"
48
+ PRJ: "myblog"
49
+ volumes:
50
+ - "./data/htdocs:/root"
51
+ ports:
52
+ - "8765:80"
53
+ depends_on:
54
+ - mysql
55
+ - phpfpm
56
+ links:
57
+ - mysql
58
+ - phpfpm
4
59
  ```
5
- $ docker-compose ps
6
- Name Command State Ports
7
- ---------------------------------------------------------------------------------------------------------------------
8
- host docker-php-entrypoint /bin ... Up 0.0.0.0:8765->80/tcp
9
- mysql docker-entrypoint.sh mysqld Up 0.0.0.0:3307->3306/tcp, 33060/tcp
10
- nginx nginx -g daemon off; Up 0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp
11
- phpfpm docker-php-entrypoint php-fpm Up 9000/tcp
12
- ```
13
60
 
14
61
  この環境でReact.jsも使えるようにしたいです。
15
62
 
16
63
 
17
64
  そのために`phpfpm`コンテナに`npm`をインストールしたいのですが
18
- **`yum`コマンドが存在しないため**困っています。
65
+ **`yum`コマンドが存在しないため**困っています。(以下のようになります)
66
+ ```
67
+ /var/www/html/app # yum -y install nodejs
68
+ sh: yum: not found
69
+ ```
19
70
 
71
+
20
72
  そもそも`npm install`するのは`phpfpm`コンテナで合っているのでしょうか。
21
73
  また、`yum`のインストール方法が調べてもわかりませんでした。
22
74