Compare commits
647 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
46107f32f7 | ||
|
|
6c584cc239 | ||
|
|
b13490bfda | ||
|
|
464c676480 | ||
|
|
600bfd57df | ||
|
|
9832736412 | ||
|
|
04d698e33d | ||
|
|
07e4b1398c | ||
|
|
095089eeb7 | ||
|
|
ddf736c484 | ||
|
|
adef552b53 | ||
|
|
dd4591eb70 | ||
|
|
ff69684609 | ||
|
|
3515716dc4 | ||
|
|
74bbfb8443 | ||
|
|
0c41fceae1 | ||
|
|
76b95752bf | ||
|
|
101986c76f | ||
|
|
add78a19f4 | ||
|
|
a0c5ef75d2 | ||
|
|
06353031ac | ||
|
|
1f193a5310 | ||
|
|
b45bf46436 | ||
|
|
0586247e3f | ||
|
|
0f8891b56c | ||
|
|
ebeb9e43f3 | ||
|
|
52afd9ef62 | ||
|
|
31a4e29c81 | ||
|
|
067218e010 | ||
|
|
5ed3526e17 | ||
|
|
54e6d66c83 | ||
|
|
8a090f3e46 | ||
|
|
1e5d787a7e | ||
|
|
83140d9939 | ||
|
|
9b85ac6c2b | ||
|
|
871a9d032a | ||
|
|
805d7f94e8 | ||
|
|
c84a57cd13 | ||
|
|
e6817288f8 | ||
|
|
cd849dda21 | ||
|
|
21a5d5bf98 | ||
|
|
2ab11bf1af | ||
|
|
141d2dbe7f | ||
|
|
4d384c0a67 | ||
|
|
245515b41d | ||
|
|
9a9d30f173 | ||
|
|
99c7758799 | ||
|
|
164069c256 | ||
|
|
5773d270ca | ||
|
|
f810962d84 | ||
|
|
f5f23bed1b | ||
|
|
e694254fb0 | ||
|
|
c34d2d12b3 | ||
|
|
349be8b30e | ||
|
|
436e9e5a66 | ||
|
|
b445479c99 | ||
|
|
70e10a4953 | ||
|
|
1ab5b405a9 | ||
|
|
91784cbf8a | ||
|
|
415a6159f6 | ||
|
|
2cf368e2cc | ||
|
|
f08c3bda4d | ||
|
|
c5c4d19476 | ||
|
|
40796651f6 | ||
|
|
188a7d7624 | ||
|
|
3f1f60da91 | ||
|
|
21e3ef8c47 | ||
|
|
7876aa2360 | ||
|
|
dee66c2495 | ||
|
|
ce8bdb91cf | ||
|
|
f90a81ef8b | ||
|
|
23b8239cfa | ||
|
|
b7b7690bbe | ||
|
|
e054b622f3 | ||
|
|
c4aef8e901 | ||
|
|
47dc7c1eb9 | ||
|
|
8fc33f5bb9 | ||
|
|
8607f670c1 | ||
|
|
04105b912d | ||
|
|
a797d67f14 | ||
|
|
4169a9b357 | ||
|
|
00e43655bd | ||
|
|
8d0bd8505c | ||
|
|
dc5474d31b | ||
|
|
ab9f5aba6e | ||
|
|
cbd0f1de79 | ||
|
|
2a2d78e249 | ||
|
|
9b328cce1f | ||
|
|
43ba898df3 | ||
|
|
3b0f271782 | ||
|
|
327e79f902 | ||
|
|
e546c9c190 | ||
|
|
880c3684d7 | ||
|
|
27ec06bbf0 | ||
|
|
6fe3dc75b3 | ||
|
|
dd751c56b7 | ||
|
|
91d202dff4 | ||
|
|
ca376935e1 | ||
|
|
227bc37376 | ||
|
|
74ca3b82a1 | ||
|
|
d23c553313 | ||
|
|
16f88029e0 | ||
|
|
74217478e0 | ||
|
|
13f55ef796 | ||
|
|
715c2176b8 | ||
|
|
43bf67b77e | ||
|
|
4b5a1ef628 | ||
|
|
198c3906b2 | ||
|
|
9bd34ed665 | ||
|
|
76da02e779 | ||
|
|
a52a944003 | ||
|
|
4cffb2fc99 | ||
|
|
92dda4695c | ||
|
|
c42e039945 | ||
|
|
72d550e6e5 | ||
|
|
e1c3524f43 | ||
|
|
91131f0963 | ||
|
|
61d3874736 | ||
|
|
03c7611010 | ||
|
|
48de39b1a1 | ||
|
|
2ca9d3c5c6 | ||
|
|
3b219d2974 | ||
|
|
e77480b69f | ||
|
|
b7f89e6b00 | ||
|
|
acbe7160d9 | ||
|
|
f53565f2a6 | ||
|
|
dfff0b2fa0 | ||
|
|
82a2681eed | ||
|
|
e792aa654e | ||
|
|
87e1bdeb92 | ||
|
|
f05fdc71d5 | ||
|
|
6e96b1c6f9 | ||
|
|
fad7c11d53 | ||
|
|
639b14445f | ||
|
|
0b902e3e96 | ||
|
|
f27b3aa4be | ||
|
|
722f7d09c0 | ||
|
|
0077de28a1 | ||
|
|
d098f1f6ad | ||
|
|
4ea9cd0663 | ||
|
|
9de6d9b9e1 | ||
|
|
04b4af829f | ||
|
|
bf2dbca286 | ||
|
|
0b7cb81f47 | ||
|
|
368c85dc61 | ||
|
|
ae7dda9ef2 | ||
|
|
7e88fb56f1 | ||
|
|
807443455a | ||
|
|
c44338e370 | ||
|
|
b4ded4f21b | ||
|
|
3e5a6029ab | ||
|
|
ee205d1198 | ||
|
|
0fcb8b43cc | ||
|
|
7bd22f015e | ||
|
|
07acf291fa | ||
|
|
cfe6e254a7 | ||
|
|
5efda6714b | ||
|
|
a83477b439 | ||
|
|
00f8c3407e | ||
|
|
0aaa2c742e | ||
|
|
4ada536d68 | ||
|
|
222febadb5 | ||
|
|
0445d76d11 | ||
|
|
7fc3a9cb7a | ||
|
|
b738253a26 | ||
|
|
6e6a658a79 | ||
|
|
4bc6526c3c | ||
|
|
d4f9b04467 | ||
|
|
b9e982c112 | ||
|
|
ad3698670b | ||
|
|
71cc109334 | ||
|
|
0d804cd29a | ||
|
|
3fcebd49e7 | ||
|
|
86eccdb962 | ||
|
|
0f46659172 | ||
|
|
017fcf188b | ||
|
|
63c69231f7 | ||
|
|
4730ed1b78 | ||
|
|
c21c6760ac | ||
|
|
1c194f5c87 | ||
|
|
81b34a72eb | ||
|
|
fde265ed6a | ||
|
|
64029d9270 | ||
|
|
407c08017d | ||
|
|
2156139b5a | ||
|
|
e1ccd84c16 | ||
|
|
d139b6bc2e | ||
|
|
5e10abd536 | ||
|
|
c6a8500c44 | ||
|
|
b981168111 | ||
|
|
cd1c9c0d44 | ||
|
|
8e32b93264 | ||
|
|
a2ae141a75 | ||
|
|
f22ceb71ab | ||
|
|
6ea86fbce3 | ||
|
|
dec08ec2b1 | ||
|
|
98fba83331 | ||
|
|
694b39ddf4 | ||
|
|
d0167475ba | ||
|
|
3bdab382ea | ||
|
|
80f6e8b60c | ||
|
|
ba61566f28 | ||
|
|
9ae10d32ce | ||
|
|
cf136f891b | ||
|
|
59dff53176 | ||
|
|
34267ffc4d | ||
|
|
57918b69a7 | ||
|
|
c11658559a | ||
|
|
47c74d1334 | ||
|
|
e779bf96ab | ||
|
|
06ce5ca222 | ||
|
|
c06c28aa04 | ||
|
|
c1e80e3af4 | ||
|
|
a7c9232193 | ||
|
|
265bc13917 | ||
|
|
8d410e9c82 | ||
|
|
f56a585ab2 | ||
|
|
9b8d4806a8 | ||
|
|
73b95357ac | ||
|
|
65a8bbc6a4 | ||
|
|
7c1f3060bf | ||
|
|
45e1ecf3c0 | ||
|
|
c6b1eb016d | ||
|
|
c5005f54f7 | ||
|
|
cf5b1af31a | ||
|
|
8dea201b68 | ||
|
|
50a3e24db8 | ||
|
|
9835a20863 | ||
|
|
5bcb99dfb9 | ||
|
|
9877f0453e | ||
|
|
ff20333d8c | ||
|
|
a99281cda8 | ||
|
|
1342b696ea | ||
|
|
2fc0f3cb2e | ||
|
|
6c3b18340f | ||
|
|
de247a074e | ||
|
|
176dd74906 | ||
|
|
819b1eb3bc | ||
|
|
05dd1b0339 | ||
|
|
f0401f5047 | ||
|
|
be13fdba7f | ||
|
|
bd0f04bd80 | ||
|
|
f7ac8cf862 | ||
|
|
b47963c80d | ||
|
|
35183eff42 | ||
|
|
c5ccc2f4ff | ||
|
|
34ef36cd7e | ||
|
|
7138d7a13c | ||
|
|
c7695ca175 | ||
|
|
6f3c41b84d | ||
|
|
46852bc31b | ||
|
|
5a21337cc5 | ||
|
|
e2091cd309 | ||
|
|
1ead8aa060 | ||
|
|
7e393efbb6 | ||
|
|
beecbe758b | ||
|
|
1b1f6b7048 | ||
|
|
fd5bb38a8c | ||
|
|
5835d185f2 | ||
|
|
4fc85d499d | ||
|
|
23ee4f6679 | ||
|
|
4e486280f4 | ||
|
|
9e807e39ee | ||
|
|
894b0197e0 | ||
|
|
c2c30bfd0f | ||
|
|
152c896515 | ||
|
|
4682aff622 | ||
|
|
a31114955a | ||
|
|
f4ede08b9c | ||
|
|
eac717fb21 | ||
|
|
c05c675408 | ||
|
|
60998ed1e4 | ||
|
|
05879bdda2 | ||
|
|
70a7bdca19 | ||
|
|
a71d5a8548 | ||
|
|
9fa3733622 | ||
|
|
b8e657b68f | ||
|
|
8aaa074af2 | ||
|
|
3005dde240 | ||
|
|
b3922995e1 | ||
|
|
49e48edefd | ||
|
|
182386b514 | ||
|
|
bea122a1fd | ||
|
|
7fb00658cf | ||
|
|
ee03bb607f | ||
|
|
9abd7c30f2 | ||
|
|
6a4509c0ca | ||
|
|
7f5d9d07d1 | ||
|
|
a5c505bf28 | ||
|
|
427088e11b | ||
|
|
3467821c28 | ||
|
|
f9553dff4c | ||
|
|
8e556008d8 | ||
|
|
17ea7b313f | ||
|
|
dff0e82ddb | ||
|
|
1702a5cc09 | ||
|
|
f15bc8e6b7 | ||
|
|
903c77421c | ||
|
|
2bedfdd9d7 | ||
|
|
525c4313a0 | ||
|
|
01c358b6bc | ||
|
|
a0685705c0 | ||
|
|
98b2b2e47b | ||
|
|
eeee14338f | ||
|
|
a2edf57e3b | ||
|
|
881cbfb8c2 | ||
|
|
508e9ebd9e | ||
|
|
6cff904eba | ||
|
|
04770bc4ec | ||
|
|
1281490c39 | ||
|
|
3f7988060e | ||
|
|
615cb72eab | ||
|
|
e036e69da2 | ||
|
|
8989c73711 | ||
|
|
61144ab2d9 | ||
|
|
221edf4bb2 | ||
|
|
ca9c07eb76 | ||
|
|
8f7b1b7e9f | ||
|
|
3cc917c9de | ||
|
|
5a073ae841 | ||
|
|
8c1e71eca5 | ||
|
|
c0e823b8d2 | ||
|
|
8cb4c8d62e | ||
|
|
f765afd4c2 | ||
|
|
6ea49a0683 | ||
|
|
998aa1365e | ||
|
|
f2420ec52c | ||
|
|
fe254e86e3 | ||
|
|
53b7f75500 | ||
|
|
4150f0b140 | ||
|
|
d340b6e60f | ||
|
|
e7357eab83 | ||
|
|
110aa91c59 | ||
|
|
e5aef41dd2 | ||
|
|
ae048e6c66 | ||
|
|
a5f3a92eb4 | ||
|
|
655b9a1526 | ||
|
|
7ac37ecd35 | ||
|
|
792789e479 | ||
|
|
801ccd47d2 | ||
|
|
5c5f94600a | ||
|
|
b2e372054f | ||
|
|
0a23d53ee5 | ||
|
|
f6552aca97 | ||
|
|
e9806d9bca | ||
|
|
e56801846b | ||
|
|
f9e6acd4e1 | ||
|
|
b61ff4f484 | ||
|
|
8485add87a | ||
|
|
d3fb967f0f | ||
|
|
a36620c3bd | ||
|
|
cddc934e1e | ||
|
|
53b3ad0f7e | ||
|
|
fdcf9117ac | ||
|
|
f800a3221a | ||
|
|
a1d3eeb7e6 | ||
|
|
b2f7348552 | ||
|
|
ebeddcba23 | ||
|
|
dba37307b5 | ||
|
|
2af5b2ff49 | ||
|
|
93d5b318fe | ||
|
|
9ce470e14e | ||
|
|
38fb49bccc | ||
|
|
08896f9fb6 | ||
|
|
dcab211b07 | ||
|
|
76001daf71 | ||
|
|
30b626d43e | ||
|
|
586a225c11 | ||
|
|
c099a51d52 | ||
|
|
245ddf3441 | ||
|
|
0192346cf2 | ||
|
|
e4f4de47e7 | ||
|
|
69ccd74d2e | ||
|
|
a3c66fdecf | ||
|
|
9b8eee6a98 | ||
|
|
668acd66c1 | ||
|
|
b25215684b | ||
|
|
8e84fbbec2 | ||
|
|
1e650d8643 | ||
|
|
4977b0f92f | ||
|
|
2082659fb1 | ||
|
|
1fe2df73e4 | ||
|
|
05c7f9186a | ||
|
|
3801973b15 | ||
|
|
6d89424e91 | ||
|
|
b1c1e6e187 | ||
|
|
972bdd90a3 | ||
|
|
2af40b0ba1 | ||
|
|
5c0b8316b1 | ||
|
|
004e4354aa | ||
|
|
d99cf73bf0 | ||
|
|
a365425c73 | ||
|
|
c836500488 | ||
|
|
318ca3f81c | ||
|
|
82219ededb | ||
|
|
d6ff224b0d | ||
|
|
b1144bba7e | ||
|
|
a590ed78ce | ||
|
|
f852789720 | ||
|
|
d32cfb31b1 | ||
|
|
e671f4c929 | ||
|
|
aef2769e60 | ||
|
|
63816ab7d6 | ||
|
|
e7a16bb98e | ||
|
|
e496a82150 | ||
|
|
f258b38a18 | ||
|
|
a80fb99d21 | ||
|
|
6b0ee10988 | ||
|
|
1e2d368e43 | ||
|
|
829a5b5acf | ||
|
|
112e31a933 | ||
|
|
8af22b5b37 | ||
|
|
7029118f05 | ||
|
|
a1f8ef9614 | ||
|
|
97d198e967 | ||
|
|
722e73a3e6 | ||
|
|
1d2f385586 | ||
|
|
7b180524e3 | ||
|
|
a670dd91cd | ||
|
|
a0f1d39ce4 | ||
|
|
6bed8d14f1 | ||
|
|
e26ff8bb1e | ||
|
|
7fdda613a5 | ||
|
|
b7d3691c8d | ||
|
|
b0a6f2d689 | ||
|
|
8e20ec7617 | ||
|
|
a38cecef92 | ||
|
|
3bf572b7a4 | ||
|
|
2acc9f5d6f | ||
|
|
abae2dc09e | ||
|
|
407fb7a395 | ||
|
|
0c1b6ba9bf | ||
|
|
855e2a47b5 | ||
|
|
988bbf7bde | ||
|
|
ef7f251654 | ||
|
|
3d29c62bfb | ||
|
|
3e5d1d919a | ||
|
|
a38794ebcc | ||
|
|
56ca814ebb | ||
|
|
c17abbea6e | ||
|
|
0d5080d6bb | ||
|
|
e9a01c0174 | ||
|
|
5ea7b98db8 | ||
|
|
5eae7f3006 | ||
|
|
d83c9be2ea | ||
|
|
9585a4a7ab | ||
|
|
42fc8b7b57 | ||
|
|
0aa63c40f8 | ||
|
|
f59b9ebda6 | ||
|
|
b2c6e53bfa | ||
|
|
9970a00533 | ||
|
|
3752f48249 | ||
|
|
0baf791728 | ||
|
|
11687ffd36 | ||
|
|
aa22f5d648 | ||
|
|
00a38fe274 | ||
|
|
fe096ce282 | ||
|
|
b4ca9c5596 | ||
|
|
d85b76f0d1 | ||
|
|
f2a9712041 | ||
|
|
09bf0566af | ||
|
|
b8c5163c03 | ||
|
|
9dda2f6b9f | ||
|
|
ca5a1ee674 | ||
|
|
0e93477db0 | ||
|
|
7765df1076 | ||
|
|
fe38f0c2ff | ||
|
|
7ec8b8846e | ||
|
|
422d6d8dd0 | ||
|
|
d021777b06 | ||
|
|
f2f665dc08 | ||
|
|
02e2454c79 | ||
|
|
9d2be424de | ||
|
|
bf60f7520b | ||
|
|
916e9f38f3 | ||
|
|
ebc24ced66 | ||
|
|
3e59a2a813 | ||
|
|
50834268a7 | ||
|
|
007017a2a7 | ||
|
|
094aa9beb1 | ||
|
|
19f9b25a46 | ||
|
|
bc1c957f47 | ||
|
|
7c9f9c1ecd | ||
|
|
63152e11fa | ||
|
|
27c6de1fb1 | ||
|
|
70e01125fd | ||
|
|
26d7fb01ed | ||
|
|
d181a69a73 | ||
|
|
106f8ec7af | ||
|
|
1951834150 | ||
|
|
4c732aa5d6 | ||
|
|
bbbd247653 | ||
|
|
c35445b066 | ||
|
|
72198ed38c | ||
|
|
ab464d93d3 | ||
|
|
e56587ec47 | ||
|
|
bbea2f0bab | ||
|
|
9db39ad36f | ||
|
|
f009ba752b | ||
|
|
03b551f9d6 | ||
|
|
30df311ec2 | ||
|
|
262b9f20a3 | ||
|
|
3eb8fce4f9 | ||
|
|
05f8166bef | ||
|
|
1bdf113767 | ||
|
|
392960dc98 | ||
|
|
26ee54a4ad | ||
|
|
cbfd160cbf | ||
|
|
7207ccbbeb | ||
|
|
6e09e2a774 | ||
|
|
0561199914 | ||
|
|
430a5f21cf | ||
|
|
0290142bf4 | ||
|
|
5745a50d15 | ||
|
|
18b6c1b907 | ||
|
|
4a663649c0 | ||
|
|
7c9d7a6de6 | ||
|
|
d0e5d50712 | ||
|
|
d0c0a8895e | ||
|
|
e23ecb6a11 | ||
|
|
da60b32a04 | ||
|
|
5a47080859 | ||
|
|
f296a39bf5 | ||
|
|
f04acee6df | ||
|
|
992c76d29c | ||
|
|
f3a016aa79 | ||
|
|
58995966ec | ||
|
|
c913c429c0 | ||
|
|
d4caddcaed | ||
|
|
8d7b3a84be | ||
|
|
fc8ffe5731 | ||
|
|
bf691337f1 | ||
|
|
9e81f92d58 | ||
|
|
bf4a5beb0b | ||
|
|
3288c20658 | ||
|
|
5a8df95fd3 | ||
|
|
43545cefd2 | ||
|
|
71364f962e | ||
|
|
b2ad5f16e8 | ||
|
|
5dc4db40f7 | ||
|
|
cec83afe45 | ||
|
|
01f6d8f038 | ||
|
|
a90a3c1d28 | ||
|
|
a1bc99ef4e | ||
|
|
35efcc4a7c | ||
|
|
c85fd97e00 | ||
|
|
895a24f332 | ||
|
|
6ff7f4a402 | ||
|
|
109e596417 | ||
|
|
20fddc6de7 | ||
|
|
1eaac78fdd | ||
|
|
855241d966 | ||
|
|
be9f7f8346 | ||
|
|
b5431bc061 | ||
|
|
783da59b59 | ||
|
|
41574fe026 | ||
|
|
848398d443 | ||
|
|
4dfc794b6e | ||
|
|
ac895209f0 | ||
|
|
b24d6224d9 | ||
|
|
8a13ae1bb9 | ||
|
|
a2058ca6f6 | ||
|
|
aab2017bda | ||
|
|
f9266a509d | ||
|
|
546ef0ade6 | ||
|
|
4661f1ab0e | ||
|
|
264bec8806 | ||
|
|
e2d60be3e5 | ||
|
|
e1e9830348 | ||
|
|
0e0dc44a49 | ||
|
|
533c8fc7f7 | ||
|
|
07651842b6 | ||
|
|
3796f9f70a | ||
|
|
31d21c74a0 | ||
|
|
c6245fdaf8 | ||
|
|
c539c630ed | ||
|
|
a414e5434f | ||
|
|
08b35e63d6 | ||
|
|
1598868445 | ||
|
|
3134221445 | ||
|
|
4cf5f3eabf | ||
|
|
3a3e58de4c | ||
|
|
26ecb09685 | ||
|
|
6db5bc0162 | ||
|
|
eab859fe80 | ||
|
|
1d6c369c06 | ||
|
|
05faf24582 | ||
|
|
e454d1c8a7 | ||
|
|
f162864e89 | ||
|
|
69c9202304 | ||
|
|
100a2eb4ae | ||
|
|
59293d7a99 | ||
|
|
02958c06fe | ||
|
|
a6e2a6ee59 | ||
|
|
cf30e159fb | ||
|
|
9f12f63aea | ||
|
|
e8aad1238e | ||
|
|
6843f508fa | ||
|
|
3b0e4cd05d | ||
|
|
e8b49a9fe5 | ||
|
|
15d7cd1d35 | ||
|
|
61f74b5307 | ||
|
|
a81686d9d0 | ||
|
|
2f010506eb | ||
|
|
4f24550463 | ||
|
|
7f7d8839eb | ||
|
|
e579b18794 | ||
|
|
fde406bafa | ||
|
|
4cb440504b | ||
|
|
aa5e8e6666 | ||
|
|
61aabf664e | ||
|
|
c31e002064 | ||
|
|
61168cb9d3 | ||
|
|
da58d2e9b9 | ||
|
|
57616901fd | ||
|
|
623d7aa58d | ||
|
|
2710723d88 | ||
|
|
e0d5fb03ed | ||
|
|
ca198b85bf | ||
|
|
f339c3f055 | ||
|
|
207cb2929a | ||
|
|
bedb663a8e | ||
|
|
5a5dceb967 | ||
|
|
369fbded81 | ||
|
|
06b9dd3327 | ||
|
|
b9b9d52e57 | ||
|
|
767fbddde9 | ||
|
|
3e63afb907 | ||
|
|
f6fe749da3 | ||
|
|
e5fbc623eb | ||
|
|
02a512dd72 | ||
|
|
d5883e4bcf | ||
|
|
5815549a9a | ||
|
|
b2821b85ab | ||
|
|
9413f2c86f | ||
|
|
956b9209bf | ||
|
|
74ba0ef0a8 | ||
|
|
eefd04dbfc | ||
|
|
a657dce572 | ||
|
|
d616545268 | ||
|
|
57ecd6e515 | ||
|
|
025a339062 | ||
|
|
5b5ba53112 | ||
|
|
bd87a26db1 | ||
|
|
c0283da6ee | ||
|
|
e372d624a6 | ||
|
|
db6c6e7e0f |
46
.github/CODE_OF_CONDUCT.md
vendored
Normal file
46
.github/CODE_OF_CONDUCT.md
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a professional setting
|
||||
|
||||
## Our Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at mahmoud@zalt.me. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
||||
3
.github/CONTRIBUTING.md
vendored
Normal file
3
.github/CONTRIBUTING.md
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
### First off, thanks for taking the time to contribute!
|
||||
|
||||
For the contribution guide [click here](http://laradock.io/contributing/).
|
||||
23
.github/ISSUE_TEMPLATE.md
vendored
Normal file
23
.github/ISSUE_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
### Info:
|
||||
- Docker version (`$ docker --version`):
|
||||
- Laradock commit (`$ git rev-parse HEAD`):
|
||||
- System info (Mac, PC, Linux):
|
||||
- System info disto/version:
|
||||
|
||||
### Issue:
|
||||
<!--- What seems to be wrong? -->
|
||||
_____
|
||||
|
||||
### Expected behavior:
|
||||
<!--- What should happen instead? -->
|
||||
_____
|
||||
|
||||
### Reproduce:
|
||||
<!--- How can we reproduce the error? -->
|
||||
_____
|
||||
|
||||
### Relevant Code:
|
||||
|
||||
```
|
||||
// place a code sample here
|
||||
```
|
||||
7
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
7
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
<!--- Thank you for contributing to Laradock -->
|
||||
|
||||
##### I completed the 3 steps below:
|
||||
|
||||
- [] I've read the [Contribution Guide](http://laradock.io/contributing).
|
||||
- [] I've updated the **documentation**. (refer to [this](http://laradock.io/contributing/#update-the-documentation-site) for how to do so).
|
||||
- [] I enjoyed my time contributing and making developer's life easier :)
|
||||
10
README-zh.md → .github/README-zh.md
vendored
10
README-zh.md → .github/README-zh.md
vendored
@@ -669,19 +669,19 @@ PHP-CLI 安装在 Workspace 容器,改变 PHP-CLI 版本你需要编辑 `works
|
||||
<a name="Use-custom-Domain"></a>
|
||||
### 使用自定义域名 (替换 Docker 的 IP)
|
||||
|
||||
假定你的自定义域名是 `laravel.dev`
|
||||
假定你的自定义域名是 `laravel.test`
|
||||
|
||||
1 - 打开 `/etc/hosts` 文件添加以下内容,映射你的 localhost 地址 `127.0.0.1` 为 `laravel.dev` 域名
|
||||
1 - 打开 `/etc/hosts` 文件添加以下内容,映射你的 localhost 地址 `127.0.0.1` 为 `laravel.test` 域名
|
||||
```bash
|
||||
127.0.0.1 laravel.dev
|
||||
127.0.0.1 laravel.test
|
||||
```
|
||||
|
||||
2 - 打开你的浏览器访问 `{http://laravel.dev}`
|
||||
2 - 打开你的浏览器访问 `{http://laravel.test}`
|
||||
|
||||
你可以在 nginx 配置文件自定义服务器名称,如下:
|
||||
|
||||
```conf
|
||||
server_name laravel.dev;
|
||||
server_name laravel.test;
|
||||
```
|
||||
|
||||
<a name="Enable-Global-Composer-Build-Install"></a>
|
||||
92
.github/README.md
vendored
Normal file
92
.github/README.md
vendored
Normal file
@@ -0,0 +1,92 @@
|
||||
<p align="center">
|
||||
<img src="https://s19.postimg.org/jblfytw9f/laradock-logo.jpg" alt="Laradock Logo"/>
|
||||
</p>
|
||||
|
||||
<p align="center">A Docker PHP development environment that facilitates running PHP Apps on Docker</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://travis-ci.org/laradock/laradock"><img src="https://travis-ci.org/laradock/laradock.svg?branch=master" alt="Build status"></a>
|
||||
<a href="https://github.com/laradock/laradock/stargazers"><a href="#backers" alt="sponsors on Open Collective"><img src="https://opencollective.com/laradock/backers/badge.svg" /></a> <a href="#sponsors" alt="Sponsors on Open Collective"><img src="https://opencollective.com/laradock/sponsors/badge.svg" /></a> <img src="https://img.shields.io/github/stars/laradock/laradock.svg" alt="GitHub stars"></a>
|
||||
<a href="https://github.com/laradock/laradock/network"><img src="https://img.shields.io/github/forks/laradock/laradock.svg" alt="GitHub forks"></a>
|
||||
<a href="https://github.com/laradock/laradock/issues"><img src="https://img.shields.io/github/issues/laradock/laradock.svg" alt="GitHub issues"></a>
|
||||
<a href="https://raw.githubusercontent.com/laradock/laradock/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="GitHub license"></a>
|
||||
<a href="http://laradock.io/contributing"><img src="https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat" alt="contributions welcome"></a>
|
||||
</p>
|
||||
|
||||
<h4 align="center" style="color:#7d58c2">Use Docker First And Learn About It Later</h4>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://zalt.me"><img src="http://forthebadge.com/images/badges/built-by-developers.svg" alt="forthebadge" width="240" ></a>
|
||||
</p>
|
||||
|
||||
|
||||
---
|
||||
|
||||
<p align="center">
|
||||
<a href="http://laradock.io">
|
||||
<img src="https://s19.postimg.org/ecnn9vdw3/Screen_Shot_2017-08-01_at_5.08.54_AM.png" width=300px" alt="Laradock Docs"/>
|
||||
</a>
|
||||
</p>
|
||||
|
||||
|
||||
## Sponsors
|
||||
|
||||
Support this project by becoming a sponsor.
|
||||
|
||||
Your logo will show up on the [github repository](https://github.com/laradock/laradock/) index page and the [documentation](http://laradock.io/) main page, with a link to your website. [[Become a sponsor](https://opencollective.com/laradock#sponsor)]
|
||||
|
||||
<a href="https://opencollective.com/laradock/sponsor/0/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/1/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/2/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/3/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/3/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/4/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/4/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/5/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/5/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/6/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/6/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/7/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/7/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/8/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/8/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/9/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/9/avatar.svg"></a>
|
||||
|
||||
|
||||
## Contributors
|
||||
|
||||
#### Core contributors:
|
||||
- [Mahmoud Zalt](https://github.com/Mahmoudz) @mahmoudz | [Twitter](https://twitter.com/Mahmoud_Zalt) | [Site](http://zalt.me)
|
||||
- [Bo-Yi Wu](https://github.com/appleboy) @appleboy | [Twitter](https://twitter.com/appleboy)
|
||||
- [Philippe Trépanier](https://github.com/philtrep) @philtrep
|
||||
- [Mike Erickson](https://github.com/mikeerickson) @mikeerickson
|
||||
- [Dwi Fahni Denni](https://github.com/zeroc0d3) @zeroc0d3
|
||||
- [Thor Erik](https://github.com/thorerik) @thorerik
|
||||
- [Winfried van Loon](https://github.com/winfried-van-loon) @winfried-van-loon
|
||||
- [TJ Miller](https://github.com/sixlive) @sixlive
|
||||
- [Yu-Lung Shao (Allen)](https://github.com/bestlong) @bestlong
|
||||
- [Milan Urukalo](https://github.com/urukalo) @urukalo
|
||||
- [Vince Chu](https://github.com/vwchu) @vwchu
|
||||
- [Huadong Zuo](https://github.com/zuohuadong) @zuohuadong
|
||||
- Join us, by submitting 20 useful PR's.
|
||||
|
||||
#### Awesome contributors:
|
||||
|
||||
<a href="https://github.com/laradock/laradock/graphs/contributors"><img src="https://opencollective.com/laradock/contributors.svg?width=890" /></a>
|
||||
|
||||
|
||||
## Donations
|
||||
|
||||
> Help keeping the project development going, by [contributing](http://laradock.io/contributing) or donating a little.
|
||||
> Thanks in advance.
|
||||
|
||||
Donate directly via [Paypal](https://www.paypal.me/mzalt)
|
||||
|
||||
[](https://www.paypal.me/mzalt)
|
||||
|
||||
or become a backer on [Open Collective](https://opencollective.com/laradock#backer)
|
||||
|
||||
<a href="https://opencollective.com/laradock#backers" target="_blank"><img src="https://opencollective.com/laradock/backers.svg?width=890"></a>
|
||||
|
||||
or show your support via [Beerpay](https://beerpay.io/laradock/laradock)
|
||||
|
||||
[](https://beerpay.io/laradock/laradock)
|
||||
|
||||
|
||||
## License
|
||||
|
||||
[MIT License](https://github.com/laradock/laradock/blob/master/LICENSE)
|
||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -2,4 +2,6 @@
|
||||
/logs
|
||||
/data
|
||||
.env
|
||||
/.project
|
||||
/.project
|
||||
.docker-sync
|
||||
/jenkins/jenkins_home
|
||||
|
||||
62
.gitlab-ci.yml
Normal file
62
.gitlab-ci.yml
Normal file
@@ -0,0 +1,62 @@
|
||||
# image: docker:latest
|
||||
# services:
|
||||
# - docker:dind
|
||||
image: jonaskello/docker-and-compose:1.12.1-1.8.0
|
||||
services:
|
||||
- docker:1.12.1-dind
|
||||
|
||||
before_script:
|
||||
- docker info
|
||||
- docker-compose version
|
||||
- cp env-example .env
|
||||
- sed -i -- "s/=false/=true/g" .env
|
||||
- cat .env
|
||||
- env | sort
|
||||
|
||||
build:5.6:php-fpm:
|
||||
variables:
|
||||
PHP_VERSION: "5.6"
|
||||
script:
|
||||
- docker-compose build php-fpm
|
||||
|
||||
build:7.0:php-fpm:
|
||||
variables:
|
||||
PHP_VERSION: "7.0"
|
||||
script:
|
||||
- docker-compose build php-fpm
|
||||
|
||||
build:7.1:php-fpm:
|
||||
variables:
|
||||
PHP_VERSION: "7.1"
|
||||
script:
|
||||
- docker-compose build php-fpm
|
||||
|
||||
build:7.2:php-fpm:
|
||||
variables:
|
||||
PHP_VERSION: "7.2"
|
||||
script:
|
||||
- docker-compose build php-fpm
|
||||
|
||||
build:5.6:workspace:
|
||||
variables:
|
||||
PHP_VERSION: "5.6"
|
||||
script:
|
||||
- docker-compose build workspace
|
||||
|
||||
build:7.0:workspace:
|
||||
variables:
|
||||
PHP_VERSION: "7.0"
|
||||
script:
|
||||
- docker-compose build workspace
|
||||
|
||||
build:7.1:workspace:
|
||||
variables:
|
||||
PHP_VERSION: "7.1"
|
||||
script:
|
||||
- docker-compose build workspace
|
||||
|
||||
build:7.2:workspace:
|
||||
variables:
|
||||
PHP_VERSION: "7.2"
|
||||
script:
|
||||
- docker-compose build workspace
|
||||
1
.ruby-version
Normal file
1
.ruby-version
Normal file
@@ -0,0 +1 @@
|
||||
2.4.2
|
||||
36
.travis.yml
36
.travis.yml
@@ -5,11 +5,41 @@ services:
|
||||
|
||||
env:
|
||||
matrix:
|
||||
- PHP_VERSION=56
|
||||
- PHP_VERSION=70
|
||||
- PHP_VERSION=71
|
||||
- HUGO_VERSION=0.20.2
|
||||
|
||||
- PHP_VERSION=5.6 BUILD_SERVICE=workspace
|
||||
- PHP_VERSION=7.0 BUILD_SERVICE=workspace
|
||||
- PHP_VERSION=7.1 BUILD_SERVICE=workspace
|
||||
- PHP_VERSION=7.2 BUILD_SERVICE=workspace
|
||||
|
||||
- PHP_VERSION=5.6 BUILD_SERVICE=php-fpm
|
||||
- PHP_VERSION=7.0 BUILD_SERVICE=php-fpm
|
||||
- PHP_VERSION=7.1 BUILD_SERVICE=php-fpm
|
||||
- PHP_VERSION=7.2 BUILD_SERVICE=php-fpm
|
||||
|
||||
- PHP_VERSION=hhvm BUILD_SERVICE=hhvm
|
||||
|
||||
# - PHP_VERSION=5.6 BUILD_SERVICE=php-worker
|
||||
- PHP_VERSION=7.0 BUILD_SERVICE=php-worker
|
||||
- PHP_VERSION=7.1 BUILD_SERVICE=php-worker
|
||||
- PHP_VERSION=7.2 BUILD_SERVICE=php-worker
|
||||
|
||||
- PHP_VERSION=NA BUILD_SERVICE=solr
|
||||
- PHP_VERSION=NA BUILD_SERVICE="mssql rethinkdb aerospike"
|
||||
- PHP_VERSION=NA BUILD_SERVICE="blackfire minio percona nginx caddy apache2 mysql mariadb postgres postgres-postgis neo4j mongo redis"
|
||||
- PHP_VERSION=NA BUILD_SERVICE="adminer phpmyadmin pgadmin"
|
||||
- PHP_VERSION=NA BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq elasticsearch certbot mailhog maildev selenium jenkins proxy proxy2 haproxy"
|
||||
- PHP_VERSION=NA BUILD_SERVICE="kibana grafana laravel-echo-server"
|
||||
# - PHP_VERSION=NA BUILD_SERVICE="aws"
|
||||
|
||||
# Installing a newer Docker version
|
||||
before_install:
|
||||
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
|
||||
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
|
||||
- sudo apt-get update
|
||||
- sudo apt-get -y install docker-ce
|
||||
- docker version
|
||||
|
||||
script: ./travis-build.sh
|
||||
|
||||
deploy:
|
||||
|
||||
41
Capfile
Normal file
41
Capfile
Normal file
@@ -0,0 +1,41 @@
|
||||
# Load DSL and set up stages
|
||||
require "capistrano/setup"
|
||||
|
||||
# Include default deployment tasks
|
||||
require "capistrano/deploy"
|
||||
|
||||
# Sudoers Service
|
||||
require "sshkit/sudo"
|
||||
|
||||
# Load the SCM plugin appropriate to your project:
|
||||
#
|
||||
# require "capistrano/scm/hg"
|
||||
# install_plugin Capistrano::SCM::Hg
|
||||
# or
|
||||
# require "capistrano/scm/svn"
|
||||
# install_plugin Capistrano::SCM::Svn
|
||||
# or
|
||||
require "capistrano/scm/git"
|
||||
install_plugin Capistrano::SCM::Git
|
||||
|
||||
# Include tasks from other gems included in your Gemfile
|
||||
#
|
||||
# For documentation on these, see for example:
|
||||
#
|
||||
# https://github.com/capistrano/rvm
|
||||
# https://github.com/capistrano/rbenv
|
||||
# https://github.com/capistrano/chruby
|
||||
# https://github.com/capistrano/bundler
|
||||
# https://github.com/capistrano/rails
|
||||
# https://github.com/capistrano/passenger
|
||||
#
|
||||
# require "capistrano/rvm"
|
||||
# require "capistrano/rbenv"
|
||||
# require "capistrano/chruby"
|
||||
# require "capistrano/bundler"
|
||||
# require "capistrano/rails/assets"
|
||||
# require "capistrano/rails/migrations"
|
||||
# require "capistrano/passenger"
|
||||
|
||||
# Load custom tasks from `lib/capistrano/tasks` if you have any defined
|
||||
Dir.glob("lib/capistrano/tasks/*.rake").each { |r| import r }
|
||||
@@ -13,8 +13,8 @@ If you have questions about how to use Laradock, please direct your questions to
|
||||
|
||||
## Found an Issue
|
||||
|
||||
If have an issue or you found a typo in the documentation, you can help us by
|
||||
opnening an [Issue](https://github.com/laradock/laradock/issues).
|
||||
If you have an issue or you found a typo in the documentation, you can help us by
|
||||
opening an [Issue](https://github.com/laradock/laradock/issues).
|
||||
|
||||
**Steps to do before opening an Issue:**
|
||||
|
||||
@@ -24,7 +24,7 @@ opnening an [Issue](https://github.com/laradock/laradock/issues).
|
||||
|
||||
If your issue appears to be a bug, and hasn't been reported, then open a new issue.
|
||||
|
||||
*This Help us to maximize the effort we can spend fixing issues and adding new
|
||||
*This helps us maximize the effort we can spend fixing issues and adding new
|
||||
features, by not reporting duplicate issues.*
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ To update the sidebar or add a new section to it, you can edit this `DOCUMENTATI
|
||||
|
||||
## Support new Software (Add new Container)
|
||||
|
||||
* Forke the repo and clone the code.
|
||||
* Fork the repo and clone the code.
|
||||
|
||||
* Create folder as the software name (example: `mysql` - `nginx`).
|
||||
|
||||
@@ -81,7 +81,7 @@ To update the sidebar or add a new section to it, you can edit this `DOCUMENTATI
|
||||
|
||||
## Edit supported Software (Edit a Container)
|
||||
|
||||
* Forke the repo and clone the code.
|
||||
* Fork the repo and clone the code.
|
||||
|
||||
* Open the software (container) folder (example: `mysql` - `nginx`).
|
||||
|
||||
|
||||
@@ -5,6 +5,8 @@ weight: 3
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="List-current-running-Containers"></a>
|
||||
## List current running Containers
|
||||
```bash
|
||||
@@ -153,7 +155,6 @@ You might use the `--no-cache` option if you want full rebuilding (`docker-compo
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Add-Docker-Images"></a>
|
||||
## Add more Software (Docker Images)
|
||||
@@ -173,14 +174,17 @@ The NGINX Log file is stored in the `logs/nginx` directory.
|
||||
However to view the logs of all the other containers (MySQL, PHP-FPM,...) you can run this:
|
||||
|
||||
```bash
|
||||
docker logs {container-name}
|
||||
docker-compose logs {container-name}
|
||||
```
|
||||
|
||||
```bash
|
||||
docker-compose logs -f {container-name}
|
||||
```
|
||||
|
||||
More [options](https://docs.docker.com/compose/reference/logs/)
|
||||
|
||||
```bash
|
||||
docker logs -f {container-name}
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -211,28 +215,24 @@ The PHP-CLI extensions should be installed in `workspace/Dockerfile`.
|
||||
<br>
|
||||
<a name="Change-the-PHP-FPM-Version"></a>
|
||||
## Change the (PHP-FPM) Version
|
||||
By default **PHP-FPM 7.0** is running.
|
||||
By default the latest stable PHP versin is configured to run.
|
||||
|
||||
>The PHP-FPM is responsible of serving your application code, you don't have to change the PHP-CLI version if you are planning to run your application on different PHP-FPM version.
|
||||
|
||||
|
||||
### A) Switch from PHP `7.0` to PHP `5.6`
|
||||
### A) Switch from PHP `7.2` to PHP `5.6`
|
||||
|
||||
1 - Open the `docker-compose.yml`.
|
||||
1 - Open the `.env`.
|
||||
|
||||
2 - Search for `Dockerfile-70` in the PHP container section.
|
||||
2 - Search for `PHP_VERSION`.
|
||||
|
||||
3 - Change the version number, by replacing `Dockerfile-70` with `Dockerfile-56`, like this:
|
||||
3 - Set the desired version number:
|
||||
|
||||
```yml
|
||||
php-fpm:
|
||||
build:
|
||||
context: ./php-fpm
|
||||
dockerfile: Dockerfile-70
|
||||
...
|
||||
```dotenv
|
||||
PHP_VERSION=5.6
|
||||
```
|
||||
|
||||
4 - Finally rebuild the container
|
||||
4 - Finally rebuild the image
|
||||
|
||||
```bash
|
||||
docker-compose build php-fpm
|
||||
@@ -241,25 +241,6 @@ docker-compose build php-fpm
|
||||
> For more details about the PHP base image, visit the [official PHP docker images](https://hub.docker.com/_/php/).
|
||||
|
||||
|
||||
### B) Switch from PHP `7.0` or `5.6` to PHP `5.5`
|
||||
|
||||
We do not natively support PHP 5.5 anymore, but you can get it in few steps:
|
||||
|
||||
1 - Clone `https://github.com/laradock/php-fpm`.
|
||||
|
||||
3 - Rename `Dockerfile-56` to `Dockerfile-55`.
|
||||
|
||||
3 - Edit the file `FROM php:5.6-fpm` to `FROM php:5.5-fpm`.
|
||||
|
||||
4 - Build an image from `Dockerfile-55`.
|
||||
|
||||
5 - Open the `docker-compose.yml` file.
|
||||
|
||||
6 - Point `php-fpm` to your `Dockerfile-55` file.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
@@ -269,11 +250,23 @@ By default **PHP-CLI 7.0** is running.
|
||||
|
||||
>Note: it's not very essential to edit the PHP-CLI version. The PHP-CLI is only used for the Artisan Commands & Composer. It doesn't serve your Application code, this is the PHP-FPM job.
|
||||
|
||||
The PHP-CLI is installed in the Workspace container. To change the PHP-CLI version you need to edit the `workspace/Dockerfile`.
|
||||
The PHP-CLI is installed in the Workspace container. To change the PHP-CLI version you need to simply change the `PHP_VERSION` in te .env file as follow:
|
||||
|
||||
Right now you have to manually edit the `Dockerfile` or create a new one like it's done for the PHP-FPM. (consider contributing).
|
||||
1 - Open the `.env`.
|
||||
|
||||
2 - Search for `PHP_VERSION`.
|
||||
|
||||
3 - Set the desired version number:
|
||||
|
||||
```dotenv
|
||||
PHP_VERSION=7.2
|
||||
```
|
||||
|
||||
4 - Finally rebuild the image
|
||||
|
||||
```bash
|
||||
docker-compose build workspace
|
||||
```
|
||||
|
||||
|
||||
|
||||
@@ -311,9 +304,7 @@ It should be like this:
|
||||
...
|
||||
```
|
||||
|
||||
2 - Re-build the containers `docker-compose build workspace php-fpm`
|
||||
|
||||
3 - Open `laradock/workspace/xdebug.ini` and/or `laradock/php-fpm/xdebug.ini` and enable at least the following configurations:
|
||||
2 - Open `laradock/workspace/xdebug.ini` and `laradock/php-fpm/xdebug.ini` and enable at least the following configurations:
|
||||
|
||||
```
|
||||
xdebug.remote_autostart=1
|
||||
@@ -321,11 +312,25 @@ xdebug.remote_enable=1
|
||||
xdebug.remote_connect_back=1
|
||||
```
|
||||
|
||||
For information on how to configure xDebug with your IDE and work it out, check this [Repository](https://github.com/LarryEitel/laravel-laradock-phpstorm).
|
||||
3 - Re-build the containers `docker-compose build workspace php-fpm`
|
||||
|
||||
For information on how to configure xDebug with your IDE and work it out, check this [Repository](https://github.com/LarryEitel/laravel-laradock-phpstorm) or follow up on the next section if you use linux and PhpStorm.
|
||||
|
||||
|
||||
<a name="Setup remote debugging for PhpStorm on Linux"></a>
|
||||
## Setup remote debugging for PhpStorm on Linux
|
||||
|
||||
- Make sure you have followed the steps above in the [Install Xdebug section](http://laradock.io/documentation/#install-xdebug).
|
||||
|
||||
- Make sure Xdebug accepts connections and listens on port 9000. (Should be default configuration).
|
||||
|
||||
.
|
||||
|
||||
- Create a server with name `laradock` (matches **PHP_IDE_CONFIG** key in environment file) and make sure to map project root path with server correctly.
|
||||
|
||||
.
|
||||
|
||||
- Start listening for debug connections, place a breakpoint and you are good to go !
|
||||
|
||||
|
||||
<br>
|
||||
@@ -415,15 +420,35 @@ To learn more about how Docker publishes ports, please read [this excellent post
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Use-Jenkins"></a>
|
||||
## Use Jenkins
|
||||
|
||||
1) Boot the container `docker-compose up -d jenkins`. To enter the container type `docker-compose exec jenkins bash`.
|
||||
|
||||
2) Go to `http://localhost:8090/` (if you didn't chanhed your default port mapping)
|
||||
|
||||
3) Authenticate from the web app.
|
||||
|
||||
- Default username is `admin`.
|
||||
- Default password is `docker-compose exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword`.
|
||||
|
||||
(To enter container as root type `docker-compose exec --user root jenkins bash`).
|
||||
|
||||
4) Install some plugins.
|
||||
|
||||
5) Create your first Admin user, or continue as Admin.
|
||||
|
||||
Note: to add user go to `http://localhost:8090/securityRealm/addUser` and to restart it from the web app visit `http://localhost:8090/restart`.
|
||||
|
||||
You may wanna change the default security configuration, so go to `http://localhost:8090/configureSecurity/` under Authorization and choosing "Anyone can do anything" or "Project-based Matrix Authorization Strategy" or anything else.
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Laravel"></a>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="Install-Laravel"></a>
|
||||
## Install Laravel from a Docker Container
|
||||
|
||||
@@ -442,18 +467,14 @@ composer create-project laravel/laravel my-cool-app "5.2.*"
|
||||
For more about the Laravel installation click [here](https://laravel.com/docs/master#installing-laravel).
|
||||
|
||||
|
||||
3 - Edit `docker-compose.yml` to Map the new application path:
|
||||
3 - Edit `.env` to Map the new application path:
|
||||
|
||||
By default, Laradock assumes the Laravel application is living in the parent directory of the laradock folder.
|
||||
|
||||
Since the new Laravel application is in the `my-cool-app` folder, we need to replace `../:/var/www` with `../my-cool-app/:/var/www`, as follow:
|
||||
|
||||
```yaml
|
||||
application:
|
||||
image: tianon/true
|
||||
volumes:
|
||||
- ../my-cool-app/:/var/www
|
||||
...
|
||||
```dotenv
|
||||
APP_CODE_PATH_HOST=../my-cool-app/
|
||||
```
|
||||
4 - Go to that folder and start working..
|
||||
|
||||
@@ -525,11 +546,17 @@ b) add a new service container by simply copy-paste this section below PHP-FPM c
|
||||
```yaml
|
||||
php-worker:
|
||||
build:
|
||||
context: ./php-fpm
|
||||
dockerfile: Dockerfile-70 # or Dockerfile-56, choose your PHP-FPM container setting
|
||||
context: ./php-worker
|
||||
args:
|
||||
- INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL} #Optionally install PGSQL PHP drivers
|
||||
volumes_from:
|
||||
- applications
|
||||
command: php artisan queue:work
|
||||
depends_on:
|
||||
- workspace
|
||||
extra_hosts:
|
||||
- "dockerhost:${DOCKER_HOST_IP}"
|
||||
networks:
|
||||
- backend
|
||||
```
|
||||
2 - Start everything up
|
||||
|
||||
@@ -551,13 +578,15 @@ docker-compose up -d php-worker
|
||||
docker-compose up -d redis
|
||||
```
|
||||
|
||||
> To execute redis commands, enter the redis container first `docker-compose exec redis bash` then enter the `redis-cli`.
|
||||
|
||||
2 - Open your Laravel's `.env` file and set the `REDIS_HOST` to `redis`
|
||||
|
||||
```env
|
||||
REDIS_HOST=redis
|
||||
```
|
||||
|
||||
If you don't find the `REDIS_HOST` variable in your `.env` file. Go to the database configuration file `config/database.php` and replace the default `127.0.0.1` IP with `redis` for Redis like this:
|
||||
If you're using Laravel, and you don't find the `REDIS_HOST` variable in your `.env` file. Go to the database configuration file `config/database.php` and replace the default `127.0.0.1` IP with `redis` for Redis like this:
|
||||
|
||||
```php
|
||||
'redis' => [
|
||||
@@ -715,7 +744,7 @@ docker-compose up -d mariadb phpmyadmin
|
||||
1 - Run the Adminer Container (`adminer`) with the `docker-compose up` command. Example:
|
||||
|
||||
```bash
|
||||
docker-compose up -d adminer
|
||||
docker-compose up -d adminer
|
||||
```
|
||||
|
||||
2 - Open your browser and visit the localhost on port **8080**: `http://localhost:8080`
|
||||
@@ -773,6 +802,8 @@ docker-compose up -d beanstalkd-console
|
||||
|
||||
2 - Open your browser and visit `http://localhost:2080/`
|
||||
|
||||
_Note: You can customize the port on which beanstalkd console is listening by changing `BEANSTALKD_CONSOLE_HOST_PORT` in `.env`. The default value is *2080*._
|
||||
|
||||
3 - Add the server
|
||||
|
||||
- Host: beanstalkd
|
||||
@@ -797,19 +828,20 @@ docker-compose up -d elasticsearch
|
||||
|
||||
2 - Open your browser and visit the localhost on port **9200**: `http://localhost:9200`
|
||||
|
||||
> The default username is `user` and the default password is `changeme`.
|
||||
|
||||
### Install ElasticSearch Plugin
|
||||
|
||||
1 - Install the ElasticSearch plugin like [delete-by-query](https://www.elastic.co/guide/en/elasticsearch/plugins/current/plugins-delete-by-query.html).
|
||||
1 - Install an ElasticSearch plugin.
|
||||
|
||||
```bash
|
||||
docker exec {container-name} /usr/share/elasticsearch/bin/plugin install delete-by-query
|
||||
docker-compose exec elasticsearch /usr/share/elasticsearch/bin/plugin install {plugin-name}
|
||||
```
|
||||
|
||||
2 - Restart elasticsearch container
|
||||
|
||||
```bash
|
||||
docker restart {container-name}
|
||||
docker-compose restart elasticsearch
|
||||
```
|
||||
|
||||
|
||||
@@ -906,6 +938,44 @@ docker-compose up -d minio
|
||||
```
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Use-AWS"></a>
|
||||
## Use AWS
|
||||
|
||||
1 - Configure AWS:
|
||||
- make sure to add your SSH keys in aws/ssh_keys folder
|
||||
|
||||
2 - Run the Aws Container (`aws`) with the `docker-compose up` command. Example:
|
||||
|
||||
```bash
|
||||
docker-compose up -d aws
|
||||
```
|
||||
|
||||
3 - Access the aws container with `docker-compose exec aws bash`
|
||||
|
||||
4 - To start using eb cli inside the container, initiaze your project first by doing 'eb init'. Read the [aws eb cli](http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli3-configuration.html) docs for more details.
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Use-Grafana"></a>
|
||||
## Use Grafana
|
||||
|
||||
1 - Configure Grafana: Change Port using `GRAFANA_PORT` if you wish to. Default is port 3000.
|
||||
|
||||
2 - Run the Grafana Container (`grafana`) with the `docker-compose up`command:
|
||||
|
||||
```bash
|
||||
docker-compose up -d grafana
|
||||
```
|
||||
|
||||
3 - Open your browser and visit the localhost on port **3000** at the following URL: `http://localhost:3000`
|
||||
|
||||
4 - Login using the credentials User = `admin` Passwort = `admin`. Change the password in the webinterface if you want to.
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="CodeIgniter"></a>
|
||||
|
||||
@@ -927,9 +997,18 @@ To install CodeIgniter 3 on Laradock all you have to do is the following simple
|
||||
3 - Re-build your PHP-FPM Container `docker-compose build php-fpm`.
|
||||
|
||||
|
||||
<a name="Install-Symfony"></a>
|
||||
## Install Symfony
|
||||
|
||||
1 - Open the `.env` file and set `WORKSPACE_INSTALL_SYMFONY` to `true`.
|
||||
|
||||
2 - Run `docker-compose build workspace`, after the step above.
|
||||
|
||||
3 - The NGINX sites include a default config file for your Symfony project `symfony.conf.example`, so edit it and make sure the `root` is pointing to your project `web` directory.
|
||||
|
||||
4 - Run `docker-compose restart` if the container was already running, before the step above.
|
||||
|
||||
5 - Visit `symfony.test`
|
||||
|
||||
<br>
|
||||
<a name="Misc"></a>
|
||||
@@ -999,6 +1078,34 @@ To change the default forwarded port for ssh:
|
||||
...
|
||||
```
|
||||
|
||||
Then login using:
|
||||
|
||||
```bash
|
||||
ssh -o PasswordAuthentication=no \
|
||||
-o StrictHostKeyChecking=no \
|
||||
-o UserKnownHostsFile=/dev/null \
|
||||
-p 2222 \
|
||||
-i workspace/insecure_id_rsa \
|
||||
laradock@localhost
|
||||
```
|
||||
|
||||
To login as root, replace laradock@locahost with root@localhost.
|
||||
|
||||
<br>
|
||||
<a name="Change-the-MySQL-Version"></a>
|
||||
## Change the (MySQL) Version
|
||||
By default **MySQL 8.0** is running.
|
||||
|
||||
MySQL 8.0 is a development release. You may prefer to use the latest stable version, or an even older release. If you wish, you can change the MySQL image that is used.
|
||||
|
||||
Open up your .env file and set the `MYSQL_VERSION` variable to the version you would like to install.
|
||||
|
||||
```
|
||||
MYSQL_VERSION=5.7
|
||||
```
|
||||
|
||||
Available versions are: 5.5, 5.6, 5.7, 8.0, or latest. See https://store.docker.com/images/mysql for more information.
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1038,6 +1145,19 @@ The default username and password for the root MySQL user are `root` and `root `
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Create-Multiple-Databases"></a>
|
||||
## Create Multiple Databases (MySQL)
|
||||
|
||||
Create `createdb.sql` from `mysql/docker-entrypoint-initdb.d/createdb.sql.example` in `mysql/docker-entrypoint-initdb.d/*` and add your SQL syntax as follow:
|
||||
|
||||
```sql
|
||||
CREATE DATABASE IF NOT EXISTS `your_db_1` COLLATE 'utf8_general_ci' ;
|
||||
GRANT ALL ON `your_db_1`.* TO 'mysql_user'@'%' ;
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Change-MySQL-port"></a>
|
||||
@@ -1061,21 +1181,21 @@ If you need <a href="#MySQL-access-from-host">MySQL access from your host</a>, d
|
||||
<a name="Use-custom-Domain"></a>
|
||||
## Use custom Domain (instead of the Docker IP)
|
||||
|
||||
Assuming your custom domain is `laravel.dev`
|
||||
Assuming your custom domain is `laravel.test`
|
||||
|
||||
1 - Open your `/etc/hosts` file and map your localhost address `127.0.0.1` to the `laravel.dev` domain, by adding the following:
|
||||
1 - Open your `/etc/hosts` file and map your localhost address `127.0.0.1` to the `laravel.test` domain, by adding the following:
|
||||
|
||||
```bash
|
||||
127.0.0.1 laravel.dev
|
||||
127.0.0.1 laravel.test
|
||||
```
|
||||
|
||||
2 - Open your browser and visit `{http://laravel.dev}`
|
||||
2 - Open your browser and visit `{http://laravel.test}`
|
||||
|
||||
|
||||
Optionally you can define the server name in the NGINX configuration file, like this:
|
||||
|
||||
```conf
|
||||
server_name laravel.dev;
|
||||
server_name laravel.test;
|
||||
```
|
||||
|
||||
|
||||
@@ -1239,11 +1359,11 @@ You are free to modify the `aliases.sh` as you see fit, adding your own aliases
|
||||
<br>
|
||||
a) open the `docker-compose.yml` file
|
||||
<br>
|
||||
b) search for the `INSTALL_AEROSPIKE_EXTENSION` argument under the Workspace Container
|
||||
b) search for the `INSTALL_AEROSPIKE` argument under the Workspace Container
|
||||
<br>
|
||||
c) set it to `true`
|
||||
<br>
|
||||
d) search for the `INSTALL_AEROSPIKE_EXTENSION` argument under the PHP-FPM Container
|
||||
d) search for the `INSTALL_AEROSPIKE` argument under the PHP-FPM Container
|
||||
<br>
|
||||
e) set it to `true`
|
||||
|
||||
@@ -1254,13 +1374,13 @@ It should be like this:
|
||||
build:
|
||||
context: ./workspace
|
||||
args:
|
||||
- INSTALL_AEROSPIKE_EXTENSION=true
|
||||
- INSTALL_AEROSPIKE=true
|
||||
...
|
||||
php-fpm:
|
||||
build:
|
||||
context: ./php-fpm
|
||||
args:
|
||||
- INSTALL_AEROSPIKE_EXTENSION=true
|
||||
- INSTALL_AEROSPIKE=true
|
||||
...
|
||||
```
|
||||
|
||||
@@ -1358,7 +1478,11 @@ Moving from Docker Toolbox (VirtualBox) to Docker Native (for Mac/Windows). Requ
|
||||
<a name="Speed-MacOS"></a>
|
||||
## Improve speed on MacOS
|
||||
|
||||
Sharing code into Docker containers with osxfs have very poor performance compared to Linux. Likely there are some workarounds:
|
||||
Docker on the Mac [is slow](https://github.com/docker/for-mac/issues/77), at the time of writing. Especially for larger projects, this can be a problem. The problem is [older than March 2016](https://forums.docker.com/t/file-access-in-mounted-volumes-extremely-slow-cpu-bound/8076) - as it's a such a long-running issue, we're including it in the docs here.
|
||||
|
||||
So since sharing code into Docker containers with osxfs have very poor performance compared to Linux. Likely there are some workarounds:
|
||||
|
||||
|
||||
|
||||
### Workaround A: using dinghy
|
||||
|
||||
@@ -1378,9 +1502,101 @@ Quick Setup giude, (we recommend you check their docs)
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Docker-Sync"></a>
|
||||
### Workaround B: using d4m-nfs
|
||||
|
||||
You can use the d4m-nfs solution in 2 ways, one is using the Laradock built it integration, and the other is using the tool separatly. Below is show case of both methods:
|
||||
|
||||
|
||||
### B.1: using the built in d4m-nfs integration
|
||||
|
||||
In simple terms, docker-sync creates a docker container with a copy of all the application files that can be accessed very quickly from the other containers.
|
||||
On the other hand, docker-sync runs a process on the host machine that continuously tracks and updates files changes from the host to this intermediate container.
|
||||
|
||||
Out of the box, it comes pre-configured for OS X, but using it on Windows is very easy to set-up by modifying the `DOCKER_SYNC_STRATEGY` on the `.env`
|
||||
|
||||
#### Usage
|
||||
|
||||
Laradock comes with `sync.sh`, an optional bash script, that automates installing, running and stopping docker-sync. Note that to run the bash script you may need to change the permissions `chmod 755 sync.sh`
|
||||
|
||||
1) Configure your Laradock environment as you would normally do and test your application to make sure that your sites are running correctly.
|
||||
|
||||
2) Make sure to set `DOCKER_SYNC_STRATEGY` on the `.env`. Read the [syncing strategies](https://github.com/EugenMayer/docker-sync/wiki/8.-Strategies) for details.
|
||||
```
|
||||
# osx: 'native_osx' (default)
|
||||
# windows: 'unison'
|
||||
# linux: docker-sync not required
|
||||
|
||||
DOCKER_SYNC_STRATEGY=native_osx
|
||||
```
|
||||
|
||||
3) set `APP_CODE_PATH_CONTAINER=/var/www` to `APP_CODE_PATH_CONTAINER=/var/www:nocopy` in the .env file
|
||||
|
||||
4) Install the docker-sync gem on the host-machine:
|
||||
```bash
|
||||
./sync.sh install
|
||||
```
|
||||
5) Start docker-sync and the Laradock environment.
|
||||
Specify the services you want to run, as you would normally do with `docker-compose up`
|
||||
```bash
|
||||
./sync.sh up nginx mysql
|
||||
```
|
||||
Please note that the first time docker-sync runs, it will copy all the files to the intermediate container and that may take a very long time (15min+).
|
||||
6) To stop the environment and docker-sync do:
|
||||
```bash
|
||||
./sync.sh down
|
||||
```
|
||||
|
||||
#### Setting up Aliases (optional)
|
||||
|
||||
You may create bash profile aliases to avoid having to remember and type these commands for everyday development.
|
||||
Add the following lines to your `~/.bash_profile`:
|
||||
|
||||
```bash
|
||||
alias devup="cd /PATH_TO_LARADOCK/laradock; ./sync.sh up nginx mysql" #add your services
|
||||
alias devbash="cd /PATH_TO_LARADOCK/laradock; ./sync.sh bash"
|
||||
alias devdown="cd /PATH_TO_LARADOCK/laradock; ./sync.sh down"
|
||||
```
|
||||
|
||||
Now from any location on your machine, you can simply run `devup`, `devbash` and `devdown`.
|
||||
|
||||
|
||||
#### Additional Commands
|
||||
|
||||
Opening bash on the workspace container (to run artisan for example):
|
||||
```bash
|
||||
./sync.sh bash
|
||||
```
|
||||
Manually triggering the synchronization of the files:
|
||||
```bash
|
||||
./sync.sh sync
|
||||
```
|
||||
Removing and cleaning up the files and the docker-sync container. Use only if you want to rebuild or remove docker-sync completely. The files on the host will be kept untouched.
|
||||
```bash
|
||||
./sync.sh clean
|
||||
```
|
||||
|
||||
|
||||
#### Additional Notes
|
||||
|
||||
- You may run laradock with or without docker-sync at any time using with the same `.env` and `docker-compose.yml`, because the configuration is overridden automatically when docker-sync is used.
|
||||
- You may inspect the `sync.sh` script to learn each of the commands and even add custom ones.
|
||||
- If a container cannot access the files on docker-sync, you may need to set a user on the Dockerfile of that container with an id of 1000 (this is the UID that nginx and php-fpm have configured on laradock). Alternatively, you may change the permissions to 777, but this is **not** recommended.
|
||||
|
||||
Visit the [docker-sync documentation](https://github.com/EugenMayer/docker-sync/wiki) for more details.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
### B.2: using the d4m-nfs tool
|
||||
|
||||
[D4m-nfs](https://github.com/IFSight/d4m-nfs) automatically mount NFS volume instead of osxfs one.
|
||||
|
||||
1) Update the Docker [File Sharing] preferences:
|
||||
@@ -1420,17 +1636,10 @@ docker-compose up ...
|
||||
|
||||
|
||||
|
||||
### Other good workarounds:
|
||||
|
||||
- [docker-sync](https://github.com/EugenMayer/docker-sync)
|
||||
- Add more here..
|
||||
|
||||
|
||||
|
||||
|
||||
More details about this issue [here](https://github.com/docker/for-mac/issues/77).
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1515,3 +1724,17 @@ This error sometimes happens because your Laravel application isn't running on t
|
||||
2. Change the `DB_HOST` variable on env with the IP that you received from previous step.
|
||||
* Option B
|
||||
1. Change the `DB_HOST` value to the same name as the MySQL docker container. The Laradock docker-compose file currently has this as `mysql`
|
||||
|
||||
## I get stuck when building nginx on `fetch http://mirrors.aliyun.com/alpine/v3.5/main/x86_64/APKINDEX.tar.gz`
|
||||
|
||||
As stated on [#749](https://github.com/laradock/laradock/issues/749#issuecomment-293296687), removing the line `RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/' /etc/apk/repositories` from `nginx/Dockerfile` solves the problem.
|
||||
|
||||
## Custom composer repo packagist url and npm registry url
|
||||
|
||||
In China, the origin source of composer and npm is very slow. You can add `WORKSPACE_NPM_REGISTRY` and `WORKSPACE_COMPOSER_REPO_PACKAGIST` config in `.env` to use your custom source.
|
||||
|
||||
Example:
|
||||
```bash
|
||||
WORKSPACE_NPM_REGISTRY=https://registry.npm.taobao.org
|
||||
WORKSPACE_COMPOSER_REPO_PACKAGIST=https://packagist.phpcomposer.com
|
||||
```
|
||||
|
||||
@@ -4,32 +4,34 @@ type: index
|
||||
weight: 2
|
||||
---
|
||||
|
||||
# Requirements
|
||||
## Requirements
|
||||
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
- [Docker](https://www.docker.com/products/docker/) `>= 1.12`
|
||||
|
||||
# Installation
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Installation
|
||||
|
||||
Choose the setup the best suits your needs.
|
||||
|
||||
- [A) Setup for Single Project](#A)
|
||||
|
||||
- [A.1) Already have a PHP project](#A1)
|
||||
|
||||
- [A.2) Don't have a PHP project yet](#A2)
|
||||
|
||||
- [A.1) Already have a PHP project](#A1)
|
||||
- [A.2) Don't have a PHP project yet](#A2)
|
||||
- [B) Setup for Multiple Projects](#B)
|
||||
|
||||
[]()
|
||||
|
||||
## A) Setup for Single Project
|
||||
|
||||
<a name="A"></a>
|
||||
### A) Setup for Single Project
|
||||
> (Follow these steps if you want a separate Docker environment for each project)
|
||||
|
||||
[]()
|
||||
|
||||
## A.1) Already have a PHP project:
|
||||
<a name="A1"></a>
|
||||
### A.1) Already have a PHP project:
|
||||
|
||||
1 - Clone laradock on your project root directory:
|
||||
|
||||
@@ -37,9 +39,10 @@ Choose the setup the best suits your needs.
|
||||
git submodule add https://github.com/Laradock/laradock.git
|
||||
```
|
||||
|
||||
Note: If you are not using Git yet for your project, you can use `git clone` instead of `git submodule`.
|
||||
Note: If you are not using Git yet for your project, you can use `git clone` instead of `git submodule `.
|
||||
|
||||
*To keep track of your Laradock changes, between your projects and also keep Laradock updated [check these docs](/documentation/#keep-track-of-your-laradock-changes)*
|
||||
|
||||
_To keep track of your Laradock changes, between your projects and also keep Laradock updated [check these docs](/documentation/#keep-track-of-your-laradock-changes)_
|
||||
|
||||
Your folder structure should look like this:
|
||||
|
||||
@@ -50,13 +53,12 @@ Your folder structure should look like this:
|
||||
+ laradock-b
|
||||
```
|
||||
|
||||
_(It's important to rename the laradock folders to unique name in each project, if you want to run laradock per project)._
|
||||
*(It's important to rename the laradock folders to unique name in each project, if you want to run laradock per project).*
|
||||
|
||||
> **Now jump to the [Usage](#Usage) section.**
|
||||
|
||||
[]()
|
||||
|
||||
## A.2) Don't have a PHP project yet:
|
||||
<a name="A2"></a>
|
||||
### A.2) Don't have a PHP project yet:
|
||||
|
||||
1 - Clone this repository anywhere on your machine:
|
||||
|
||||
@@ -89,13 +91,12 @@ Make sure to replace `project-z` with your project folder name.
|
||||
|
||||
> **Now jump to the [Usage](#Usage) section.**
|
||||
|
||||
[]()
|
||||
|
||||
## B) Setup for Multiple Projects:
|
||||
|
||||
<a name="B"></a>
|
||||
### B) Setup for Multiple Projects:
|
||||
> (Follow these steps if you want a single Docker environment for all your project)
|
||||
|
||||
1 - Clone this repository anywhere on your machine (similar to [Steps A.2\. from above](#A2)):
|
||||
1 - Clone this repository anywhere on your machine (similar to [Steps A.2. from above](#A2)):
|
||||
|
||||
```bash
|
||||
git clone https://github.com/laradock/laradock.git
|
||||
@@ -111,35 +112,46 @@ Your folder structure should look like this:
|
||||
|
||||
2 - Go to `nginx/sites` and create config files to point to different project directory when visiting different domains.
|
||||
|
||||
Laradock by default includes `project-1.conf` and `project-2.conf` as working samples.
|
||||
Laradock by default includes `app.conf.example`, `laravel.conf.example` and `symfony.conf.example` as working samples.
|
||||
|
||||
3 - change the default names `project-n`:
|
||||
3 - change the default names `*.conf`:
|
||||
|
||||
You can rename the config files, project folders and domains as you like, just make sure the `root` in the config files, is pointing to the correct project folder name.
|
||||
|
||||
4 - Add the domains to the **hosts** files.
|
||||
|
||||
```
|
||||
127.0.0.1 project-1.dev
|
||||
127.0.0.1 project-2.dev
|
||||
127.0.0.1 project-1.test
|
||||
127.0.0.1 project-2.test
|
||||
...
|
||||
```
|
||||
If you use Chrome 63 or above for development, don't use `.dev`. [Why?](https://laravel-news.com/chrome-63-now-forces-dev-domains-https). Instead use `.localhost`, `.invalid`, `.test`, or `.example`.
|
||||
|
||||
> **Now jump to the [Usage](#Usage) section.**
|
||||
|
||||
[]()
|
||||
|
||||
# Usage
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="Usage"></a>
|
||||
## Usage
|
||||
|
||||
**Read Before starting:**
|
||||
|
||||
If you are using **Docker Toolbox** (VM), do one of the following:
|
||||
|
||||
- Upgrade to Docker [Native](https://www.docker.com/products/docker) for Mac/Windows (Recommended). Check out [Upgrading Laradock](/documentation/#upgrading-laradock)
|
||||
- Use Laradock v3.*. Visit the [Laradock-ToolBox](https://github.com/laradock/laradock/tree/Laradock-ToolBox) branch. _(outdated)_
|
||||
- Use Laradock v3.\*. Visit the [Laradock-ToolBox](https://github.com/laradock/laradock/tree/Laradock-ToolBox) branch. *(outdated)*
|
||||
|
||||
<br>
|
||||
|
||||
> **Warning:** If you used an older version of Laradock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent as much errors as possible.
|
||||
We recommend using a Docker version which is newer than 1.13.
|
||||
|
||||
<br>
|
||||
|
||||
>**Warning:** If you used an older version of Laradock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent as much errors as possible.
|
||||
|
||||
<br>
|
||||
|
||||
@@ -149,7 +161,9 @@ If you are using **Docker Toolbox** (VM), do one of the following:
|
||||
cp env-example .env
|
||||
```
|
||||
|
||||
You can edit the `.env` file to chose which software's you want to be installed in your environment. You can always refer to the `docker-compose.yml` file to see how those variables are been used.
|
||||
You can edit the `.env` file to choose which software's you want to be installed in your environment. You can always refer to the `docker-compose.yml` file to see how those variables are been used.
|
||||
|
||||
Depending on the host's operating system you may need to change the value given to `COMPOSE_FILE`. When you are running Laradock on Mac OS the correct file separator to use is `:`. When running Laradock from a Windows environment multiple files must be separated with `;`.
|
||||
|
||||
2 - Build the enviroment and run it using `docker-compose`
|
||||
|
||||
@@ -159,11 +173,13 @@ In this example we'll see how to run NGINX (web server) and MySQL (database engi
|
||||
docker-compose up -d nginx mysql
|
||||
```
|
||||
|
||||
**Note**: The `workspace` and `php-fpm` will run automatically in most of the cases, so no need to specify them in the `up` command. If you couldn't find them running then you need specify them as follow: `docker-compose up -d nginx php-fpm mysql workspace`.
|
||||
**Note**: The web servers `nginx`, `apache`.. all depend on `php-fpm`, means if you just run, them they will automatically run the `php-fpm` for you, so no need to specify them in the `up` command. If you don't see them running then you may need run them as follow: `docker-compose up -d nginx php-fpm mysql...`.
|
||||
|
||||
You can select your own combination of containers form [this list](http://laradock.io/introduction/#supported-software-images).
|
||||
|
||||
_(Please note that sometimes we forget to update the docs, so check the `docker-compose.yml` file to see an updated list of all available containers)._
|
||||
You can select your own combination of containers from [this list](http://laradock.io/introduction/#supported-software-images).
|
||||
|
||||
*(Please note that sometimes we forget to update the docs, so check the `docker-compose.yml` file to see an updated list of all available containers).*
|
||||
|
||||
|
||||
<br>
|
||||
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, ...)
|
||||
@@ -172,19 +188,19 @@ _(Please note that sometimes we forget to update the docs, so check the `docker-
|
||||
docker-compose exec workspace bash
|
||||
```
|
||||
|
||||
_Alternatively, for Windows PowerShell users: execute the following command to enter any running container:_
|
||||
*Alternatively, for Windows PowerShell users: execute the following command to enter any running container:*
|
||||
|
||||
```bash
|
||||
docker exec -it {workspace-container-id} bash
|
||||
```
|
||||
|
||||
**Note:** You can add `--user=laradock` to have files created as your host's user. Example:
|
||||
**Note:** You can add `--user=laradock` to have files created as your host's user. Example:
|
||||
|
||||
```shell
|
||||
docker-compose exec --user=laradock workspace bash
|
||||
```
|
||||
|
||||
_You can change the PUID (User id) and PGID (group id) variables from the `.env` file)_
|
||||
*You can change the PUID (User id) and PGID (group id) variables from the `.env` file)*
|
||||
|
||||
<br>
|
||||
4 - Update your project configurations to use the database host
|
||||
@@ -195,7 +211,7 @@ Open your PHP project's `.env` file or whichever configuration file you are read
|
||||
DB_HOST=mysql
|
||||
```
|
||||
|
||||
_If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel)._
|
||||
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
|
||||
|
||||
<br>
|
||||
5 - Open your browser and visit your localhost address `http://localhost/`. If you followed the multiple projects setup, you can visit `http://project-1.dev/` and `http://project-2.dev/`. But first don't
|
||||
5 - Open your browser and visit your localhost address `http://localhost/`. If you followed the multiple projects setup, you can visit `http://project-1.test/` and `http://project-2.test/`.
|
||||
|
||||
@@ -4,11 +4,15 @@ type: index
|
||||
weight: 4
|
||||
---
|
||||
|
||||
- [Production Setup on Digital Ocean](#Digital-Ocean)
|
||||
- [PHPStorm XDebug Setup](#PHPStorm-Debugging)
|
||||
|
||||
[]()
|
||||
|
||||
* [Production Setup on Digital Ocean](#Digital-Ocean)
|
||||
* [PHPStorm XDebug Setup](#PHPStorm-Debugging)
|
||||
* [Running Laravel Dusk Test](#Laravel-Dusk)
|
||||
|
||||
|
||||
|
||||
<a name="Digital-Ocean"></a>
|
||||
# Production Setup on Digital Ocean
|
||||
|
||||
## Install Docker
|
||||
@@ -52,6 +56,10 @@ $root@server:~/laravel/ cd laradock
|
||||
$root@server:~/laravel/laradock# curl -L https://github.com/docker/compose/releases/download/1.8.0/run.sh > /usr/local/bin/docker-compose
|
||||
$root@server:~/chmod +x /usr/local/bin/docker-compose
|
||||
```
|
||||
## Enter the laradock folder and rename env-example to .env.
|
||||
```
|
||||
$root@server:~/laravel/laradock# cp env-example .env
|
||||
```
|
||||
|
||||
## Create Your Laradock Containers
|
||||
|
||||
@@ -104,7 +112,7 @@ ns3.digitalocean.com
|
||||
|
||||
Within DigitalOcean, you'll need to change some settings, too.
|
||||
|
||||
Visit: <https://cloud.digitalocean.com/networking/domains>
|
||||
Visit: https://cloud.digitalocean.com/networking/domains
|
||||
|
||||
Add your domain name and choose the server IP you'd provision earlier.
|
||||
|
||||
@@ -135,8 +143,8 @@ And add `server_name` (your custom domain)
|
||||
## Rebuild Your Nginx
|
||||
|
||||
```
|
||||
$root@server:~/laravel/laradock/nginx# docker-compose down
|
||||
$root@server:~/laravel/laradock/nginx# docker-compose build nginx
|
||||
$root@server:~/laravel/laradock# docker-compose down
|
||||
$root@server:~/laravel/laradock# docker-compose build nginx
|
||||
```
|
||||
|
||||
## Re Run Your Containers MYSQL and NGINX
|
||||
@@ -145,7 +153,7 @@ $root@server:~/laravel/laradock/nginx# docker-compose build nginx
|
||||
$root@server:~/laravel/laradock/nginx# docker-compose up -d nginx mysql
|
||||
```
|
||||
|
||||
**View Your Site with HTTP ONLY (<http://yourdomain.com>)**
|
||||
**View Your Site with HTTP ONLY (http://yourdomain.com)**
|
||||
|
||||
## Run Site on SSL with Let's Encrypt Certificate
|
||||
|
||||
@@ -165,7 +173,7 @@ Remove 0.0.0.0:80
|
||||
root /var/www/public
|
||||
```
|
||||
|
||||
and replace with your <https://yourdomain.com>
|
||||
and replace with your https://yourdomain.com
|
||||
|
||||
```
|
||||
https://yourdomain.com
|
||||
@@ -214,93 +222,83 @@ $root@server:~/laravel/laradock/caddy# docker-compose down
|
||||
$root@server:~/laravel/laradock/caddy# docker-compose up -d mysql caddy
|
||||
```
|
||||
|
||||
View your Site in the Browser Securely Using HTTPS (<https://yourdomain.com>)
|
||||
View your Site in the Browser Securely Using HTTPS (https://yourdomain.com)
|
||||
|
||||
**Note that Certificate will be Automatically Renew By Caddy**
|
||||
|
||||
> References:
|
||||
>References:
|
||||
>
|
||||
- [https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04)
|
||||
- [https://www.digitalocean.com/products/one-click-apps/docker/](https://www.digitalocean.com/products/one-click-apps/docker/)
|
||||
- [https://docs.docker.com/engine/installation/linux/ubuntulinux/](https://docs.docker.com/engine/installation/linux/ubuntulinux/)
|
||||
- [https://docs.docker.com/compose/install/](https://docs.docker.com/compose/install/)
|
||||
- [https://caddyserver.com/docs/automatic-https](https://caddyserver.com/docs/automatic-https)
|
||||
- [https://caddyserver.com/docs/tls](https://caddyserver.com/docs/tls)
|
||||
- [https://caddyserver.com/docs/caddyfile](https://caddyserver.com/docs/caddyfile)
|
||||
|
||||
> - <https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04>
|
||||
> - <https://www.digitalocean.com/products/one-click-apps/docker/>
|
||||
> - <https://docs.docker.com/engine/installation/linux/ubuntulinux/>
|
||||
> - <https://docs.docker.com/compose/install/>
|
||||
> - <https://caddyserver.com/docs/automatic-https>
|
||||
> - <https://caddyserver.com/docs/tls>
|
||||
> - <https://caddyserver.com/docs/caddyfile>
|
||||
|
||||
<br><br><br><br><br>
|
||||
|
||||
[]()
|
||||
|
||||
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<a name="PHPStorm-Debugging"></a>
|
||||
# PHPStorm XDebug Setup
|
||||
|
||||
- [Intro](#Intro)
|
||||
- [Installation](#Installation)
|
||||
|
||||
- [Customize laradock/docker-compose.yml](#CustomizeDockerCompose)
|
||||
|
||||
- [Clean House](#InstallCleanHouse)
|
||||
- [Laradock Dial Tone](#InstallLaradockDialTone)
|
||||
- [hosts](#AddToHosts)
|
||||
- [Firewall](#FireWall)
|
||||
- [Enable xDebug on php-fpm](#enablePhpXdebug)
|
||||
|
||||
- [PHPStorm Settings](#InstallPHPStorm)
|
||||
|
||||
- [Configs](#InstallPHPStormConfigs)
|
||||
|
||||
- [Customize laradock/docker-compose.yml](#CustomizeDockerCompose)
|
||||
- [Clean House](#InstallCleanHouse)
|
||||
- [Laradock Dial Tone](#InstallLaradockDialTone)
|
||||
- [hosts](#AddToHosts)
|
||||
- [Firewall](#FireWall)
|
||||
- [Enable xDebug on php-fpm](#enablePhpXdebug)
|
||||
- [PHPStorm Settings](#InstallPHPStorm)
|
||||
- [Configs](#InstallPHPStormConfigs)
|
||||
- [Usage](#Usage)
|
||||
|
||||
- [Laravel](#UsageLaravel)
|
||||
|
||||
- [Run ExampleTest](#UsagePHPStormRunExampleTest)
|
||||
- [Debug ExampleTest](#UsagePHPStormDebugExampleTest)
|
||||
- [Debug Web Site](#UsagePHPStormDebugSite)
|
||||
|
||||
- [Laravel](#UsageLaravel)
|
||||
- [Run ExampleTest](#UsagePHPStormRunExampleTest)
|
||||
- [Debug ExampleTest](#UsagePHPStormDebugExampleTest)
|
||||
- [Debug Web Site](#UsagePHPStormDebugSite)
|
||||
- [SSH into workspace](#SSHintoWorkspace)
|
||||
- [KiTTY](#InstallKiTTY)
|
||||
|
||||
- [KiTTY](#InstallKiTTY)
|
||||
|
||||
[]()
|
||||
|
||||
<a name="Intro"></a>
|
||||
## Intro
|
||||
|
||||
Wiring up [Laravel](https://laravel.com/), [Laradock](https://github.com/Laradock/laradock) [Laravel+Docker] and [PHPStorm](https://www.jetbrains.com/phpstorm/) to play nice together complete with remote xdebug'ing as icing on top! Although this guide is based on `PHPStorm Windows`, you should be able to adjust accordingly. This guide was written based on Docker for Windows Native.
|
||||
|
||||
[]()
|
||||
Wiring up [Laravel](https://laravel.com/), [Laradock](https://github.com/Laradock/laradock) [Laravel+Docker] and [PHPStorm](https://www.jetbrains.com/phpstorm/) to play nice together complete with remote xdebug'ing as icing on top! Although this guide is based on `PHPStorm Windows`,
|
||||
you should be able to adjust accordingly. This guide was written based on Docker for Windows Native.
|
||||
|
||||
<a name="Installation"></a>
|
||||
## Installation
|
||||
|
||||
- This guide assumes the following:
|
||||
- you have already installed and are familiar with Laravel, Laradock and PHPStorm.
|
||||
- you have installed Laravel as a parent of `laradock`. This guide assumes `/c/_dk/laravel`.
|
||||
|
||||
- you have already installed and are familiar with Laravel, Laradock and PHPStorm.
|
||||
- you have installed Laravel as a parent of `laradock`. This guide assumes `/c/_dk/laravel`.
|
||||
|
||||
[]()
|
||||
|
||||
<a name="AddToHosts"></a>
|
||||
## hosts
|
||||
|
||||
- Add `laravel` to your hosts file located on Windows 10 at `C:\Windows\System32\drivers\etc\hosts`. It should be set to the IP of your running container. Mine is: `10.0.75.2` On Windows you can find it by opening Windows `Hyper-V Manager`.
|
||||
|
||||
- 
|
||||
- Add `laravel` to your hosts file located on Windows 10 at `C:\Windows\System32\drivers\etc\hosts`. It should be set to the IP of your running container. Mine is: `10.0.75.2`
|
||||
On Windows you can find it by opening Windows `Hyper-V Manager`.
|
||||
- 
|
||||
|
||||
- [Hosts File Editor](https://github.com/scottlerch/HostsFileEditor) makes it easy to change your hosts file.
|
||||
- Set `laravel` to your docker host IP. See [Example](images/photos/SimpleHostsEditor/AddHost_laravel.png).
|
||||
|
||||
- Set `laravel` to your docker host IP. See [Example](images/photos/SimpleHostsEditor/AddHost_laravel.png).
|
||||
|
||||
[]()
|
||||
|
||||
<a name="FireWall"></a>
|
||||
## Firewall
|
||||
|
||||
Your PHPStorm will need to be able to receive a connection from PHP xdebug either your running workspace or php-fpm containers on port 9000\. This means that your Windows Firewall should either enable connections from the Application PHPStorm OR the port.
|
||||
Your PHPStorm will need to be able to receive a connection from PHP xdebug either your running workspace or php-fpm containers on port 9000. This means that your Windows Firewall should either enable connections from the Application PHPStorm OR the port.
|
||||
|
||||
- It is important to note that if the Application PHPStorm is NOT enabled in the firewall, you will not be able to recreate a rule to override that.
|
||||
- Also be aware that if you are installing/upgrade different versions of PHPStorm, you MAY have orphaned references to PHPStorm in your Firewall! You may decide to remove orphaned references however in either case, make sure that they are set to receive public TCP traffic.
|
||||
|
||||
### Edit laradock/docker-compose.yml
|
||||
|
||||
Set the following variables:
|
||||
|
||||
```
|
||||
### Workspace Utilities Container ###############
|
||||
|
||||
@@ -321,10 +319,10 @@ Set the following variables:
|
||||
args:
|
||||
- INSTALL_XDEBUG=true
|
||||
...
|
||||
|
||||
```
|
||||
|
||||
### Edit xdebug.ini files
|
||||
|
||||
- `laradock/workspace/xdebug.ini`
|
||||
- `laradock/php-fpm/xdebug.ini`
|
||||
|
||||
@@ -337,59 +335,66 @@ xdebug.remote_connect_back=1
|
||||
xdebug.cli_color=1
|
||||
```
|
||||
|
||||
[]()
|
||||
|
||||
<a name="InstallCleanHouse"></a>
|
||||
### Need to clean house first?
|
||||
|
||||
Make sure you are starting with a clean state. For example, do you have other Laradock containers and images? Here are a few things I use to clean things up.
|
||||
Make sure you are starting with a clean state. For example, do you have other Laradock containers and images?
|
||||
Here are a few things I use to clean things up.
|
||||
|
||||
- Delete all containers using `grep laradock_` on the names, see: [Remove all containers based on docker image name](https://linuxconfig.org/remove-all-containners-based-on-docker-image-name). `docker ps -a | awk '{ print $1,$2 }' | grep laradock_ | awk '{print $1}' | xargs -I {} docker rm {}`
|
||||
- Delete all containers using `grep laradock_` on the names, see: [Remove all containers based on docker image name](https://linuxconfig.org/remove-all-containners-based-on-docker-image-name).
|
||||
|
||||
- Delete all images containing `laradock`. `docker images | awk '{print $1,$2,$3}' | grep laradock_ | awk '{print $3}' | xargs -I {} docker rmi {}` **Note:** This will only delete images that were built with `Laradock`, **NOT** `laradock/*` which are pulled down by `Laradock` such as `laradock/workspace`, etc. **Note:** Some may fail with: `Error response from daemon: conflict: unable to delete 3f38eaed93df (cannot be forced) - image has dependent child images`
|
||||
`docker ps -a | awk '{ print $1,$2 }' | grep laradock_ | awk '{print $1}' | xargs -I {} docker rm {}`
|
||||
|
||||
- Delete all images containing `laradock`.
|
||||
|
||||
`docker images | awk '{print $1,$2,$3}' | grep laradock_ | awk '{print $3}' | xargs -I {} docker rmi {}`
|
||||
**Note:** This will only delete images that were built with `Laradock`, **NOT** `laradock/*` which are pulled down by `Laradock` such as `laradock/workspace`, etc.
|
||||
**Note:** Some may fail with:
|
||||
`Error response from daemon: conflict: unable to delete 3f38eaed93df (cannot be forced) - image has dependent child images`
|
||||
|
||||
- I added this to my `.bashrc` to remove orphaned images.
|
||||
|
||||
```
|
||||
dclean() {
|
||||
processes=`docker ps -q -f status=exited`
|
||||
if [ -n "$processes" ]; thend
|
||||
docker rm $processes
|
||||
fi
|
||||
```
|
||||
dclean() {
|
||||
processes=`docker ps -q -f status=exited`
|
||||
if [ -n "$processes" ]; then
|
||||
docker rm $processes
|
||||
fi
|
||||
|
||||
images=`docker images -q -f dangling=true`
|
||||
if [ -n "$images" ]; then
|
||||
docker rmi $images
|
||||
fi
|
||||
}
|
||||
```
|
||||
images=`docker images -q -f dangling=true`
|
||||
if [ -n "$images" ]; then
|
||||
docker rmi $images
|
||||
fi
|
||||
}
|
||||
```
|
||||
|
||||
- If you frequently switch configurations for Laradock, you may find that adding the following and added to your `.bashrc` or equivalent useful:
|
||||
|
||||
```
|
||||
# remove laravel* containers
|
||||
# remove laravel_* images
|
||||
dcleanlaradockfunction()
|
||||
{
|
||||
echo 'Removing ALL containers associated with laradock'
|
||||
docker ps -a | awk '{ print $1,$2 }' | grep laradock | awk '{print $1}' | xargs -I {} docker rm {}
|
||||
```
|
||||
# remove laravel* containers
|
||||
# remove laravel_* images
|
||||
dcleanlaradockfunction()
|
||||
{
|
||||
echo 'Removing ALL containers associated with laradock'
|
||||
docker ps -a | awk '{ print $1,$2 }' | grep laradock | awk '{print $1}' | xargs -I {} docker rm {}
|
||||
|
||||
# remove ALL images associated with laradock_
|
||||
# does NOT delete laradock/* which are hub images
|
||||
echo 'Removing ALL images associated with laradock_'
|
||||
docker images | awk '{print $1,$2,$3}' | grep laradock_ | awk '{print $3}' | xargs -I {} docker rmi {}
|
||||
# remove ALL images associated with laradock_
|
||||
# does NOT delete laradock/* which are hub images
|
||||
echo 'Removing ALL images associated with laradock_'
|
||||
docker images | awk '{print $1,$2,$3}' | grep laradock_ | awk '{print $3}' | xargs -I {} docker rmi {}
|
||||
|
||||
echo 'Listing all laradock docker hub images...'
|
||||
docker images | grep laradock
|
||||
echo 'Listing all laradock docker hub images...'
|
||||
docker images | grep laradock
|
||||
|
||||
echo 'dcleanlaradock completed'
|
||||
}
|
||||
# associate the above function with an alias
|
||||
# so can recall/lookup by typing 'alias'
|
||||
alias dcleanlaradock=dcleanlaradockfunction
|
||||
```
|
||||
|
||||
[]()
|
||||
echo 'dcleanlaradock completed'
|
||||
}
|
||||
# associate the above function with an alias
|
||||
# so can recall/lookup by typing 'alias'
|
||||
alias dcleanlaradock=dcleanlaradockfunction
|
||||
```
|
||||
|
||||
<a name="InstallLaradockDialTone"></a>
|
||||
## Let's get a dial-tone with Laravel
|
||||
|
||||
```
|
||||
@@ -410,11 +415,11 @@ laradock_volumes_source_1 true Exit 0
|
||||
laradock_workspace_1 /sbin/my_init Up 0.0.0.0:2222->22/tcp
|
||||
```
|
||||
|
||||
[]()
|
||||
|
||||
<a name="enablePhpXdebug"></a>
|
||||
## Enable xDebug on php-fpm
|
||||
|
||||
In a host terminal sitting in the laradock folder, run: `.php-fpm/xdebug status` You should see something like the following:
|
||||
In a host terminal sitting in the laradock folder, run: `.php-fpm/xdebug status`
|
||||
You should see something like the following:
|
||||
|
||||
```
|
||||
xDebug status
|
||||
@@ -427,147 +432,454 @@ Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
|
||||
|
||||
Other commands include `.php-fpm/xdebug start | stop`.
|
||||
|
||||
If you have enabled `xdebug=true` in `docker-compose.yml/php-fpm`, `xdebug` will already be running when `php-fpm` is started and listening for debug info on port 9000.
|
||||
If you have enabled `xdebug=true` in `docker-compose.yml/php-fpm`, `xdebug` will already be running when
|
||||
`php-fpm` is started and listening for debug info on port 9000.
|
||||
|
||||
[]()
|
||||
|
||||
<a name="InstallPHPStormConfigs"></a>
|
||||
## PHPStorm Settings
|
||||
|
||||
- Here are some settings that are known to work:
|
||||
- `Settings/BuildDeploymentConnection`
|
||||
- 
|
||||
|
||||
- `Settings/BuildDeploymentConnection`
|
||||
- `Settings/BuildDeploymentConnectionMappings`
|
||||
- 
|
||||
|
||||
- 
|
||||
- `Settings/BuildDeploymentDebugger`
|
||||
- 
|
||||
|
||||
- `Settings/BuildDeploymentConnectionMappings`
|
||||
- `Settings/EditRunConfigurationRemoteWebDebug`
|
||||
- 
|
||||
|
||||
- 
|
||||
- `Settings/EditRunConfigurationRemoteExampleTestDebug`
|
||||
- 
|
||||
|
||||
- `Settings/BuildDeploymentDebugger`
|
||||
- `Settings/LangsPHPDebug`
|
||||
- 
|
||||
|
||||
- 
|
||||
- `Settings/LangsPHPInterpreters`
|
||||
- 
|
||||
|
||||
- `Settings/EditRunConfigurationRemoteWebDebug`
|
||||
- `Settings/LangsPHPPHPUnit`
|
||||
- 
|
||||
|
||||
- 
|
||||
- `Settings/LangsPHPServers`
|
||||
- 
|
||||
|
||||
- `Settings/EditRunConfigurationRemoteExampleTestDebug`
|
||||
- `RemoteHost`
|
||||
To switch on this view, go to: `Menu/Tools/Deployment/Browse Remote Host`.
|
||||
- 
|
||||
|
||||
- 
|
||||
- `RemoteWebDebug`
|
||||
- 
|
||||
|
||||
- `Settings/LangsPHPDebug`
|
||||
- `EditRunConfigurationRemoteWebDebug`
|
||||
Go to: `Menu/Run/Edit Configurations`.
|
||||
- 
|
||||
|
||||
- 
|
||||
- `EditRunConfigurationRemoteExampleTestDebug`
|
||||
Go to: `Menu/Run/Edit Configurations`.
|
||||
- 
|
||||
|
||||
- `Settings/LangsPHPInterpreters`
|
||||
- `WindowsFirewallAllowedApps`
|
||||
Go to: `Control Panel\All Control Panel Items\Windows Firewall\Allowed apps`.
|
||||
- 
|
||||
|
||||
- 
|
||||
- `hosts`
|
||||
Edit: `C:\Windows\System32\drivers\etc\hosts`.
|
||||
- 
|
||||
|
||||
- `Settings/LangsPHPPHPUnit`
|
||||
- [Enable xDebug on php-fpm](#enablePhpXdebug)
|
||||
|
||||
- 
|
||||
|
||||
- `Settings/LangsPHPServers`
|
||||
|
||||
- 
|
||||
|
||||
- `RemoteHost` To switch on this view, go to: `Menu/Tools/Deployment/Browse Remote Host`.
|
||||
|
||||
- 
|
||||
|
||||
- `RemoteWebDebug`
|
||||
|
||||
- 
|
||||
|
||||
- `EditRunConfigurationRemoteWebDebug` Go to: `Menu/Run/Edit Configurations`.
|
||||
|
||||
- 
|
||||
|
||||
- `EditRunConfigurationRemoteExampleTestDebug` Go to: `Menu/Run/Edit Configurations`.
|
||||
|
||||
- 
|
||||
|
||||
- `WindowsFirewallAllowedApps` Go to: `Control Panel\All Control Panel Items\Windows Firewall\Allowed apps`.
|
||||
|
||||
- 
|
||||
|
||||
- `hosts` Edit: `C:\Windows\System32\drivers\etc\hosts`.
|
||||
|
||||
- 
|
||||
|
||||
- [Enable xDebug on php-fpm](#enablePhpXdebug)
|
||||
|
||||
[]()
|
||||
|
||||
<a name="Usage"></a>
|
||||
## Usage
|
||||
|
||||
[]()
|
||||
|
||||
<a name="UsagePHPStormRunExampleTest"></a>
|
||||
### Run ExampleTest
|
||||
|
||||
- right-click on `tests/ExampleTest.php`
|
||||
- Select: `Run 'ExampleTest.php'` or `Ctrl+Shift+F10`.
|
||||
- Should pass!! You just ran a remote test via SSH!
|
||||
|
||||
- Select: `Run 'ExampleTest.php'` or `Ctrl+Shift+F10`.
|
||||
- Should pass!! You just ran a remote test via SSH!
|
||||
|
||||
[]()
|
||||
|
||||
<a name="UsagePHPStormDebugExampleTest"></a>
|
||||
### Debug ExampleTest
|
||||
|
||||
- Open to edit: `tests/ExampleTest.php`
|
||||
- Add a BreakPoint on line 16: `$this->visit('/')`
|
||||
- right-click on `tests/ExampleTest.php`
|
||||
- Select: `Debug 'ExampleTest.php'`.
|
||||
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
|
||||
- 
|
||||
|
||||
- Select: `Debug 'ExampleTest.php'`.
|
||||
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
|
||||
- 
|
||||
|
||||
[]()
|
||||
|
||||
<a name="UsagePHPStormDebugSite"></a>
|
||||
### Debug WebSite
|
||||
|
||||
- In case xDebug is disabled, from the `laradock` folder run: `.php-fpm/xdebug start`.
|
||||
|
||||
- To switch xdebug off, run: `.php-fpm/xdebug stop`
|
||||
- In case xDebug is disabled, from the `laradock` folder run:
|
||||
`.php-fpm/xdebug start`.
|
||||
- To switch xdebug off, run:
|
||||
`.php-fpm/xdebug stop`
|
||||
|
||||
- Start Remote Debugging
|
||||
|
||||
- 
|
||||
- 
|
||||
|
||||
- Open to edit: `bootstrap/app.php`
|
||||
|
||||
- Add a BreakPoint on line 14: `$app = new Illuminate\Foundation\Application(`
|
||||
- Reload [Laravel Site](http://laravel/)
|
||||
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
|
||||
- 
|
||||
|
||||
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
|
||||
- 
|
||||
|
||||
[]()
|
||||
|
||||
<a name="SSHintoWorkspace"></a>
|
||||
## Let's shell into workspace
|
||||
|
||||
Assuming that you are in laradock folder, type: `ssh -i workspace/insecure_id_rsa -p2222 root@laravel` **Cha Ching!!!!**
|
||||
|
||||
Assuming that you are in laradock folder, type:
|
||||
`ssh -i workspace/insecure_id_rsa -p2222 root@laravel`
|
||||
**Cha Ching!!!!**
|
||||
- `workspace/insecure_id_rsa.ppk` may become corrupted. In which case:
|
||||
- fire up `puttygen`
|
||||
- import `workspace/insecure_id_rsa`
|
||||
- save private key to `workspace/insecure_id_rsa.ppk`
|
||||
|
||||
- fire up `puttygen`
|
||||
- import `workspace/insecure_id_rsa`
|
||||
- save private key to `workspace/insecure_id_rsa.ppk`
|
||||
|
||||
[]()
|
||||
<a name="InstallKiTTY"></a>
|
||||
|
||||
### KiTTY
|
||||
|
||||
[Kitty](http://www.9bis.net/kitty/) KiTTY is a fork from version 0.67 of PuTTY.
|
||||
|
||||
- Here are some settings that are working for me:
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
- 
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<a name="Laravel-Dusk"></a>
|
||||
# Running Laravel Dusk Tests
|
||||
|
||||
- [Option 1: Without Selenium](#option1-dusk)
|
||||
- [Option 2: With Selenium](#option2-dusk)
|
||||
|
||||
<a name="option1-dusk"></a>
|
||||
## Option 1: Without Selenium
|
||||
|
||||
- [Intro](#option1-dusk-intro)
|
||||
- [Workspace Setup](#option1-workspace-setup)
|
||||
- [Application Setup](#option1-application-setup)
|
||||
- [Choose Chrome Driver Version (Optional)](#option1-choose-chrome-driver-version)
|
||||
- [Run Dusk Tests](#option1-run-dusk-tests)
|
||||
|
||||
<a name="option1-dusk-intro"></a>
|
||||
### Intro
|
||||
|
||||
This is a guide to run Dusk tests in your `workspace` container with headless
|
||||
google-chrome and chromedriver. It has been tested with Laravel 5.4 and 5.5.
|
||||
|
||||
<a name="option1-workspace-setup"></a>
|
||||
### Workspace Setup
|
||||
|
||||
Update your .env with following entries:
|
||||
|
||||
```
|
||||
...
|
||||
# Install Laravel installer bin to setup demo app
|
||||
WORKSPACE_INSTALL_LARAVEL_INSTALLER=true
|
||||
...
|
||||
# Install all the necessary dependencies for running Dusk tests
|
||||
WORKSPACE_INSTALL_DUSK_DEPS=true
|
||||
...
|
||||
```
|
||||
|
||||
Then run below to build your workspace.
|
||||
|
||||
```
|
||||
docker-compose build workspace
|
||||
```
|
||||
|
||||
<a name="option1-application-setup"></a>
|
||||
### Application Setup
|
||||
|
||||
Run a `workspace` container and you will be inside the container at `/var/www` directory.
|
||||
|
||||
```
|
||||
docker-compose run workspace bash
|
||||
|
||||
/var/www#> _
|
||||
```
|
||||
|
||||
Create new Laravel application named `dusk-test` and install Laravel Dusk package.
|
||||
|
||||
```
|
||||
/var/www> laravel new dusk-test
|
||||
/var/www> cd dusk-test
|
||||
/var/www/dusk-test> composer require --dev laravel/dusk
|
||||
/var/www/dusk-test> php artisan dusk:install
|
||||
```
|
||||
|
||||
Create `.env.dusk.local` by copying from `.env` file.
|
||||
|
||||
```
|
||||
/var/www/dusk-test> cp .env .env.dusk.local
|
||||
```
|
||||
|
||||
Update the `APP_URL` entry in `.env.dusk.local` to local Laravel server.
|
||||
|
||||
```
|
||||
APP_URL=http://localhost:8000
|
||||
```
|
||||
|
||||
You will need to run chromedriver with `headless` and `no-sandbox` flag. In Laravel Dusk 2.x it is
|
||||
already set `headless` so you just need to add `no-sandbox` flag. If you on previous version 1.x,
|
||||
you will need to update your `DustTestCase#driver` as shown below.
|
||||
|
||||
|
||||
```
|
||||
<?php
|
||||
|
||||
...
|
||||
|
||||
abstract class DuskTestCase extends BaseTestCase
|
||||
{
|
||||
...
|
||||
|
||||
/**
|
||||
* Update chrome driver with below flags
|
||||
*/
|
||||
protected function driver()
|
||||
{
|
||||
$options = (new ChromeOptions)->addArguments([
|
||||
'--disable-gpu',
|
||||
'--headless',
|
||||
'--no-sandbox'
|
||||
]);
|
||||
|
||||
return RemoteWebDriver::create(
|
||||
'http://localhost:9515', DesiredCapabilities::chrome()->setCapability(
|
||||
ChromeOptions::CAPABILITY, $options
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<a name="option1-choose-chrome-driver-version"></a>
|
||||
### Choose Chrome Driver Version (Optional)
|
||||
|
||||
You could choose to use either:
|
||||
|
||||
1. Chrome Driver shipped with Laravel Dusk. (Default)
|
||||
2. Chrome Driver installed in `workspace` container. (Required tweak on DuskTestCase class)
|
||||
|
||||
For Laravel 2.x, you need to update `DuskTestCase#prepare` method if you wish to go with option #2.
|
||||
|
||||
```
|
||||
|
||||
<?php
|
||||
|
||||
...
|
||||
abstract class DuskTestCase extends BaseTestCase
|
||||
{
|
||||
...
|
||||
public static function prepare()
|
||||
{
|
||||
// Only add this line if you wish to use chrome driver installed in workspace container.
|
||||
// You might want to read the file path from env file.
|
||||
static::useChromedriver('/usr/local/bin/chromedriver');
|
||||
|
||||
static::startChromeDriver();
|
||||
}
|
||||
```
|
||||
|
||||
For Laravel 1.x, you need to add `DuskTestCase#buildChromeProcess` method if you wish to go with option #2.
|
||||
|
||||
```
|
||||
<?php
|
||||
|
||||
...
|
||||
use Symfony\Component\Process\ProcessBuilder;
|
||||
|
||||
abstract class DuskTestCase extends BaseTestCase
|
||||
{
|
||||
...
|
||||
|
||||
/**
|
||||
* Only add this method if you wish to use chrome driver installed in workspace container
|
||||
*/
|
||||
protected static function buildChromeProcess()
|
||||
{
|
||||
return (new ProcessBuilder())
|
||||
->setPrefix('chromedriver')
|
||||
->getProcess()
|
||||
->setEnv(static::chromeEnvironment());
|
||||
}
|
||||
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
<a name="option1-run-dusk-tests"></a>
|
||||
### Run Dusk Tests
|
||||
|
||||
Run local server in `workspace` container and run Dusk tests.
|
||||
|
||||
```
|
||||
# alias to run Laravel server in the background (php artisan serve --quiet &)
|
||||
/var/www/dusk-test> serve
|
||||
# alias to run Dusk tests (php artisan dusk)
|
||||
/var/www/dusk-test> dusk
|
||||
|
||||
PHPUnit 6.4.0 by Sebastian Bergmann and contributors.
|
||||
|
||||
. 1 / 1 (100%)
|
||||
|
||||
Time: 837 ms, Memory: 6.00MB
|
||||
```
|
||||
|
||||
<a name="option2-dusk"></a>
|
||||
## Option 2: With Selenium
|
||||
|
||||
- [Intro](#dusk-intro)
|
||||
- [DNS Setup](#dns-setup)
|
||||
- [Docker Compose Setup](#docker-compose)
|
||||
- [Laravel Dusk Setup](#laravel-dusk-setup)
|
||||
- [Running Laravel Dusk Tests](#running-tests)
|
||||
|
||||
<a name="dusk-intro"></a>
|
||||
### Intro
|
||||
Setting up Laravel Dusk tests to run with Laradock appears be something that
|
||||
eludes most Laradock users. This guide is designed to show you how to wire them
|
||||
up to work together. This guide is written with macOS and Linux in mind. As such,
|
||||
it's only been tested on macOS. Feel free to create pull requests to update the guide
|
||||
for Windows-specific instructions.
|
||||
|
||||
This guide assumes you know how to use a DNS forwarder such as `dnsmasq` or are comfortable
|
||||
with editing the `/etc/hosts` file for one-off DNS changes.
|
||||
|
||||
<a name="dns-setup"></a>
|
||||
### DNS Setup
|
||||
According to RFC-2606, only four TLDs are reserved for local testing[^1]:
|
||||
|
||||
- `.test`
|
||||
- `.example`
|
||||
- `.invalid`
|
||||
- `.localhost`
|
||||
|
||||
A common TLD used for local development is `.dev`, but newer versions of Google
|
||||
Chrome (such as the one bundled with the Selenium Docker image), will fail to
|
||||
resolve that DNS as there will appear to be a name collision.
|
||||
|
||||
The recommended extension is `.test` for your Laravel web apps because you're
|
||||
running tests. Using a DNS forwarder such as `dnsmasq` or by editing the `/etc/hosts`
|
||||
file, configure the host to point to `localhost`.
|
||||
|
||||
For example, in your `/etc/hosts` file:
|
||||
```
|
||||
##
|
||||
# Host Database
|
||||
#
|
||||
# localhost is used to configure the loopback interface
|
||||
# when the system is booting. Do not change this entry.
|
||||
##
|
||||
127.0.0.1 localhost
|
||||
255.255.255.255 broadcasthost
|
||||
::1 localhost
|
||||
127.0.0.1 myapp.test
|
||||
```
|
||||
|
||||
This will ensure that when navigating to `myapp.test`, it will route the
|
||||
request to `127.0.0.1` which will be handled by Nginx in Laradock.
|
||||
|
||||
<a name="docker-compose"></a>
|
||||
### Docker Compose setup
|
||||
In order to make the Selenium container talk to the Nginx container appropriately,
|
||||
the `docker-compose.yml` needs to be edited to accommodate this. Make the following
|
||||
changes:
|
||||
|
||||
```yaml
|
||||
...
|
||||
selenium:
|
||||
...
|
||||
depends_on:
|
||||
- nginx
|
||||
links:
|
||||
- nginx:<your_domain>
|
||||
```
|
||||
|
||||
This allows network communication between the Nginx and Selenium containers
|
||||
and it also ensures that when starting the Selenium container, the Nginx
|
||||
container starts up first unless it's already running. This allows
|
||||
the Selenium container to make requests to the Nginx container, which is
|
||||
necessary for running Dusk tests. These changes also link the `nginx` environment
|
||||
variable to the domain you wired up in your hosts file.
|
||||
|
||||
<a name="laravel-dusk-setup"></a>
|
||||
### Laravel Dusk Setup
|
||||
|
||||
In order to make Laravel Dusk make the proper request to the Selenium container,
|
||||
you have to edit the `DuskTestCase.php` file that's provided on the initial
|
||||
installation of Laravel Dusk. The change you have to make deals with the URL the
|
||||
Remote Web Driver attempts to use to set up the Selenium session.
|
||||
|
||||
One recommendation for this is to add a separate config option in your `.env.dusk.local`
|
||||
so it's still possible to run your Dusk tests locally should you want to.
|
||||
|
||||
#### .env.dusk.local
|
||||
```
|
||||
...
|
||||
USE_SELENIUM=true
|
||||
```
|
||||
|
||||
#### DuskTestCase.php
|
||||
```php
|
||||
abstract class DuskTestCase extends BaseTestCase
|
||||
{
|
||||
...
|
||||
protected function driver()
|
||||
{
|
||||
if (env('USE_SELENIUM', 'false') == 'true') {
|
||||
return RemoteWebDriver::create(
|
||||
'http://selenium:4444/wd/hub', DesiredCapabilities::chrome()
|
||||
);
|
||||
} else {
|
||||
return RemoteWebDriver::create(
|
||||
'http://localhost:9515', DesiredCapabilities::chrome()
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<a name="running-tests"></a>
|
||||
### Running Laravel Dusk Tests
|
||||
|
||||
Now that you have everything set up, to run your Dusk tests, you have to SSH
|
||||
into the workspace container as you normally would:
|
||||
```docker-compose exec --user=laradock workspace bash```
|
||||
|
||||
Once inside, you can change directory to your application and run:
|
||||
|
||||
```php artisan dusk```
|
||||
|
||||
One way to make this easier from your project is to create a helper script. Here's one such example:
|
||||
```bash
|
||||
#!/usr/bin/env sh
|
||||
|
||||
LARADOCK_HOME="path/to/laradock"
|
||||
|
||||
pushd ${LARADOCK_HOME}
|
||||
|
||||
docker-compose exec --user=laradock workspace bash -c "cd my-project && php artisan dusk && exit"
|
||||
```
|
||||
|
||||
This invokes the Dusk command from inside the workspace container but when the script completes
|
||||
execution, it returns your session to your project directory.
|
||||
|
||||
[^1]: [Don't Use .dev for Development](https://iyware.com/dont-use-dev-for-development/)
|
||||
|
||||
@@ -35,7 +35,7 @@ cp env-example .env
|
||||
3 - Run your containers:
|
||||
|
||||
```shell
|
||||
docker-compose up -d nginx mysql redis beanstalkd
|
||||
docker-compose up -d nginx mysql phpmyadmin redis workspace
|
||||
```
|
||||
|
||||
4 - Open your project's `.env` file and set the following:
|
||||
@@ -58,7 +58,7 @@ That's it! enjoy :)
|
||||
<a name="features"></a>
|
||||
## Features
|
||||
|
||||
- Easy switch between PHP versions: 7.1, 7.0, 5.6...
|
||||
- Easy switch between PHP versions: 7.2, 7.1, 5.6...
|
||||
- Choose your favorite database engine: MySQL, Postgres, MariaDB...
|
||||
- Run your own combination of software: Memcached, HHVM, Beanstalkd...
|
||||
- Every software runs on a separate container: PHP-FPM, NGINX, PHP-CLI...
|
||||
@@ -83,17 +83,21 @@ In adhering to the separation of concerns principle as promoted by Docker, Larad
|
||||
You can turn On/Off as many instances of as any container without worrying about the configurations, everything works like a charm.
|
||||
|
||||
- **Database Engines:**
|
||||
MySQL - MariaDB - Percona - MongoDB - Neo4j - RethinkDB - MSSQL - PostgreSQL - Postgres Postgis.
|
||||
MySQL - MariaDB - Percona - MongoDB - Neo4j - RethinkDB - MSSQL - PostgreSQL - Postgres-PostGIS.
|
||||
- **Database Management:**
|
||||
PhpMyAdmin - Adminer - PgAdmin
|
||||
- **Cache Engines:**
|
||||
Redis - Memcached - Aerospike
|
||||
- **PHP Servers:**
|
||||
NGINX - Apache2 - Caddy
|
||||
- **PHP Compilers:**
|
||||
PHP FPM - HHVM
|
||||
- **Message Queuing:**
|
||||
Beanstalkd - Beanstalkd Console - RabbitMQ - RabbitMQ Console - PHP Worker
|
||||
- **Tools:**
|
||||
HAProxy - Jenkins - ElasticSearch - Selenium - Certbot - Mailhog - Minio - Varnish - PhpMyAdmin - Adminer - PgAdmin - MailHog - [Blackfire](https://blackfire.io)...
|
||||
- **Message Queueing:**
|
||||
Beanstalkd - RabbitMQ - PHP Worker
|
||||
- **Queueing Management:**
|
||||
Beanstalkd Console - RabbitMQ Console
|
||||
- **Random Tools:**
|
||||
HAProxy - Certbot - Blackfire - Selenium - Jenkins - ElasticSearch - Kibana - Grafana - Mailhog - MailDev - Minio - Varnish - Swoole - Laravel Echo...
|
||||
|
||||
Laradock introduces the **Workspace** Image, as a development environment.
|
||||
It contains a rich set of helpful tools, all pre-configured to work and integrate with almost any combination of Containers and tools you may choose.
|
||||
@@ -108,10 +112,30 @@ You can choose, which tools to install in your workspace container and other con
|
||||
|
||||
|
||||
|
||||
If you can't find your Software in the list, build it yourself and sumit it. Contributions are welcomed :)
|
||||
If you can't find your Software in the list, build it yourself and submit it. Contributions are welcomed :)
|
||||
|
||||
|
||||
|
||||
## Sponsors
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Support this project by becoming a sponsor.
|
||||
|
||||
Your logo will show up on the [github repository](https://github.com/laradock/laradock/) index page and the [documentation](http://laradock.io/) main page, with a link to your website. [[Become a sponsor](https://opencollective.com/laradock#sponsor)]
|
||||
|
||||
<a href="https://opencollective.com/laradock/sponsor/0/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/1/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/2/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/3/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/3/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/4/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/4/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/5/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/5/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/6/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/6/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/7/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/7/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/8/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/8/avatar.svg"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/9/website" target="_blank"><img src="https://opencollective.com/laradock/sponsor/9/avatar.svg"></a>
|
||||
|
||||
|
||||
|
||||
@@ -148,7 +172,7 @@ Most importantly Docker can run on Development and on Production (same environme
|
||||
|
||||
What's better than a **Demo Video**:
|
||||
|
||||
- Laradock v5.* (soon or never)
|
||||
- Laradock v5.* (should be next!)
|
||||
- Laradock [v4.*](https://www.youtube.com/watch?v=TQii1jDa96Y)
|
||||
- Laradock [v2.*](https://www.youtube.com/watch?v=-DamFMczwDA)
|
||||
- Laradock [v0.3](https://www.youtube.com/watch?v=jGkyO6Is_aI)
|
||||
@@ -166,3 +190,25 @@ What's better than a **Demo Video**:
|
||||
You are welcome to join our chat room on Gitter.
|
||||
|
||||
[](https://gitter.im/Laradock/laradock?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="Donations"></a>
|
||||
## Donations
|
||||
|
||||
> Help keeping the project development going, by [contributing](http://laradock.io/contributing) or donating a little.
|
||||
> Thanks in advance.
|
||||
|
||||
Donate directly via [Paypal](https://www.paypal.me/mzalt)
|
||||
|
||||
[](https://www.paypal.me/mzalt)
|
||||
|
||||
or become a backer on [Open Collective](https://opencollective.com/laradock#backer)
|
||||
|
||||
<a href="https://opencollective.com/laradock#backers" target="_blank"><img src="https://opencollective.com/laradock/backers.svg?width=890"></a>
|
||||
|
||||
or show your support via [Beerpay](https://beerpay.io/laradock/laradock)
|
||||
|
||||
[](https://beerpay.io/laradock/laradock)
|
||||
|
||||
@@ -14,5 +14,6 @@ These Docker Compose projects have piqued our interest:
|
||||
* [MageDock](https://github.com/ojhaujjwal/magedock) by [Ujjwal Ojha](https://github.com/ojhaujjwal)
|
||||
* [RubyDev-Dock](https://github.com/scudelletti/rubydev-dock) by [Diogo Scudelletti](https://github.com/scudelletti)
|
||||
* [NoDock](https://github.com/Osedea/nodock) by [Osedea](https://github.com/Osedea)
|
||||
* [Dockery](https://github.com/taufek/dockery) by [Taufek](https://github.com/Taufek)
|
||||
|
||||
If you want your project listed here, please open an issue.
|
||||
|
||||
@@ -20,11 +20,25 @@
|
||||
<main class="main">
|
||||
<div class="drawer">
|
||||
{{ partial "drawer" . }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="article">
|
||||
<div class="wrapper">
|
||||
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1>
|
||||
|
||||
<!-- ------------------------------------------------------------------------- -->
|
||||
<!-- Google Ads -->
|
||||
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
|
||||
<!-- Laradock Horizontal -->
|
||||
<ins class="adsbygoogle"
|
||||
style="display:inline-block;width:890px;height:100px"
|
||||
data-ad-client="ca-pub-9826129398689742"
|
||||
data-ad-slot="2340256024"></ins>
|
||||
<script>
|
||||
(adsbygoogle = window.adsbygoogle || []).push({});
|
||||
</script>
|
||||
<!-- ------------------------------------------------------------------------- -->
|
||||
|
||||
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1>
|
||||
|
||||
{{ .Content }}
|
||||
|
||||
|
||||
@@ -24,6 +24,20 @@
|
||||
|
||||
<article class="article">
|
||||
<div class="wrapper">
|
||||
|
||||
<!-- ------------------------------------------------------------------------- -->
|
||||
<!-- Google Ads -->
|
||||
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
|
||||
<!-- Laradock Horizontal -->
|
||||
<ins class="adsbygoogle"
|
||||
style="display:inline-block;width:890px;height:100px"
|
||||
data-ad-client="ca-pub-9826129398689742"
|
||||
data-ad-slot="2340256024"></ins>
|
||||
<script>
|
||||
(adsbygoogle = window.adsbygoogle || []).push({});
|
||||
</script>
|
||||
<!-- ------------------------------------------------------------------------- -->
|
||||
|
||||
{{ range where .Site.Pages "Type" "index" }}
|
||||
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1>
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
<div class="logo">
|
||||
<img src="{{ $.Site.BaseURL }}{{ . }}">
|
||||
</div>
|
||||
Laradock
|
||||
{{ end }}
|
||||
<!--<div class="name">-->
|
||||
<!--<strong>{{ .Site.Title }} {{ with .Site.Params.version }}<span class="version">{{ . }}</span>{{ end }}</strong>-->
|
||||
@@ -42,18 +43,39 @@
|
||||
</ul>
|
||||
{{ end }}
|
||||
|
||||
{{ if isset .Site.Params "author" }}
|
||||
|
||||
<br>
|
||||
<br>
|
||||
<div>
|
||||
<!-- ------------------------------------------------------------------------- -->
|
||||
<!-- Google Ads -->
|
||||
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
|
||||
<!-- Laradock Vertical -->
|
||||
<ins class="adsbygoogle"
|
||||
style="display:inline-block;width:237px;height:600px"
|
||||
data-ad-client="ca-pub-9826129398689742"
|
||||
data-ad-slot="9891442983"></ins>
|
||||
<script>
|
||||
(adsbygoogle = window.adsbygoogle || []).push({});
|
||||
</script>
|
||||
<!-- ------------------------------------------------------------------------- -->
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
|
||||
<!--{{ if isset .Site.Params "author" }}-->
|
||||
<!--<hr>-->
|
||||
<!--<span class="section">The author</span>-->
|
||||
|
||||
<ul>
|
||||
{{ with .Site.Social.twitter }}
|
||||
<li>
|
||||
<a href="https://twitter.com/{{ . }}" target="_blank" title="@{{ . }} on Twitter">
|
||||
@{{ . }} on Twitter
|
||||
</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
<!---->
|
||||
<!--<ul>-->
|
||||
<!--{{ with .Site.Social.twitter }}-->
|
||||
<!--<li>-->
|
||||
<!--<a href="https://twitter.com/{{ . }}" target="_blank" title="@{{ . }} on Twitter">-->
|
||||
<!--@{{ . }} on Twitter-->
|
||||
<!--</a>-->
|
||||
<!--</li>-->
|
||||
<!--{{ end }}-->
|
||||
|
||||
<!--{{ with .Site.Social.github }}-->
|
||||
<!--<li>-->
|
||||
@@ -63,16 +85,17 @@
|
||||
<!--</li>-->
|
||||
<!--{{ end }}-->
|
||||
|
||||
{{ with .Site.Social.email }}
|
||||
<li>
|
||||
<a href="mailto:{{ . }}" title="Email of {{ . }}">
|
||||
Contact via email
|
||||
</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
<!--{{ with .Site.Social.email }}-->
|
||||
<!--<li>-->
|
||||
<!--<a href="mailto:{{ . }}" title="Email of {{ . }}">-->
|
||||
<!--Contact via email-->
|
||||
<!--</a>-->
|
||||
<!--</li>-->
|
||||
<!--{{ end }}-->
|
||||
<!--</ul>-->
|
||||
<!--{{ end }}-->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
@@ -21,7 +21,6 @@
|
||||
<div class="button button-github" role="button" aria-label="GitHub">
|
||||
<a style="padding: 0px; font-size:40px" href="https://github.com/{{ . }}" title="@{{ . }} on GitHub" target="_blank" class="toggle-button icon icon-github"></a>
|
||||
</div>
|
||||
<p style="font-size: 18px; padding: 8px">Github</p>
|
||||
{{ end }}
|
||||
|
||||
<!-- TODO: disabled until Hugo supports the generation of a content index natively
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 85 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 64 KiB |
@@ -108,9 +108,17 @@ font-weight:700;
|
||||
OVERRIDING THE DEFAULT STYLES - By Mahmoud Zalt (mahmoud@zalt.me) for Laradock.io
|
||||
*/
|
||||
|
||||
.project .logo img{
|
||||
width: 140px;
|
||||
height: 140px;
|
||||
|
||||
.project .logo img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
background: transparent;
|
||||
border-radius: 0%;
|
||||
}
|
||||
|
||||
.project .banner {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
}
|
||||
9
Gemfile
Normal file
9
Gemfile
Normal file
@@ -0,0 +1,9 @@
|
||||
source 'https://rubygems.org'
|
||||
|
||||
group :development, :test do
|
||||
gem 'capistrano'
|
||||
gem 'sshkit-sudo'
|
||||
gem 'docker-api'
|
||||
gem 'rspec'
|
||||
gem 'rubocop'
|
||||
end
|
||||
4
LICENSE
4
LICENSE
@@ -1,6 +1,6 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright 2016 <Mahmoud Zalt>
|
||||
Copyright 2018 <Mahmoud Zalt>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
THE SOFTWARE.
|
||||
|
||||
30
README.md
30
README.md
@@ -1,30 +0,0 @@
|
||||

|
||||
|
||||
[](https://travis-ci.org/laradock/laradock)
|
||||
|
||||
> Use Docker first and learn about it later.
|
||||
|
||||
A Docker PHP development environment that facilitates running **PHP** Apps on **Docker**.
|
||||
|
||||
[](http://zalt.me)
|
||||
|
||||
## Documentation
|
||||
|
||||
[**Full Documentation Here**](http://laradock.io)
|
||||
|
||||
## Credits
|
||||
|
||||
**Maintainers:**
|
||||
|
||||
- [Mahmoud Zalt](https://github.com/Mahmoudz) @mahmoudz | [Twitter](https://twitter.com/Mahmoud_Zalt) | [Site](http://zalt.me)
|
||||
- [Bo-Yi Wu](https://github.com/appleboy) @appleboy | [Twitter](https://twitter.com/appleboy)
|
||||
- [Philippe Trépanier](https://github.com/philtrep) @philtrep
|
||||
- [Mike Erickson](https://github.com/mikeerickson) @mikeerickson
|
||||
- [Dwi Fahni Denni](https://github.com/zeroc0d3) @zeroc0d3
|
||||
- [Thor Erik](https://github.com/thorerik) @thorerik
|
||||
- [Winfried van Loon](https://github.com/winfried-van-loon) @winfried-van-loon
|
||||
- Join Us.
|
||||
|
||||
## License
|
||||
|
||||
[MIT License](https://github.com/laradock/laradock/blob/master/LICENSE) (MIT)
|
||||
@@ -1,12 +0,0 @@
|
||||
FROM adminer:4.3.0
|
||||
|
||||
# Version 4.3.1 contains PostgreSQL login errors. See docs.
|
||||
# See https://sourceforge.net/p/adminer/bugs-and-features/548/
|
||||
|
||||
MAINTAINER Patrick Artounian <partounian@gmail.com>
|
||||
|
||||
# Add volume for sessions to allow session persistence
|
||||
VOLUME /sessions
|
||||
|
||||
# We expose Adminer on port 8080 (Adminer's default)
|
||||
EXPOSE 8080
|
||||
@@ -1,7 +0,0 @@
|
||||
FROM aerospike:latest
|
||||
|
||||
MAINTAINER Luciano Jr <luciano@lucianojr.com.br>
|
||||
|
||||
RUN rm /etc/aerospike/aerospike.conf
|
||||
|
||||
ADD aerospike.conf /etc/aerospike/aerospike.conf
|
||||
@@ -1,19 +0,0 @@
|
||||
FROM webdevops/apache:ubuntu-16.04
|
||||
|
||||
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
|
||||
|
||||
ARG PHP_SOCKET=php-fpm:9000
|
||||
|
||||
ENV WEB_PHP_SOCKET=$PHP_SOCKET
|
||||
|
||||
ENV WEB_DOCUMENT_ROOT=/var/www/public/
|
||||
|
||||
EXPOSE 80 443
|
||||
|
||||
WORKDIR /var/www/public/
|
||||
|
||||
COPY vhost.conf /etc/apache2/sites-enabled/vhost.conf
|
||||
|
||||
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
|
||||
|
||||
CMD ["supervisord"]
|
||||
@@ -1,28 +0,0 @@
|
||||
# Docs: https://caddyserver.com/docs/caddyfile
|
||||
0.0.0.0:80
|
||||
root /var/www/public
|
||||
fastcgi / php-fpm:9000 php {
|
||||
index index.php
|
||||
}
|
||||
|
||||
# To handle .html extensions with laravel change ext to
|
||||
# ext / .html
|
||||
|
||||
rewrite {
|
||||
r .*
|
||||
ext /
|
||||
to /index.php?{query}
|
||||
}
|
||||
gzip
|
||||
browse
|
||||
log /var/log/caddy/access.log
|
||||
errors /var/log/caddy/error.log
|
||||
# Uncomment to enable TLS (HTTPS)
|
||||
# Change the first list to listen on port 443 when enabling TLS
|
||||
#tls self_signed
|
||||
|
||||
# To use Lets encrpt tls with a DNS provider uncomment these
|
||||
# lines and change the provider as required
|
||||
#tls {
|
||||
# dns cloudflare
|
||||
#}
|
||||
@@ -1,24 +0,0 @@
|
||||
FROM alpine:3.4
|
||||
|
||||
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
|
||||
|
||||
ENV caddy_version=0.10.0
|
||||
|
||||
LABEL caddy_version="$caddy_version" architecture="amd64"
|
||||
|
||||
RUN apk update \
|
||||
&& apk upgrade \
|
||||
&& apk add tar curl git
|
||||
|
||||
RUN curl --silent --show-error --fail --location \
|
||||
--header "Accept: application/tar+gzip, application/x-gzip, application/octet-stream" -o - \
|
||||
"https://caddyserver.com/download/linux/amd64?plugins=http.cgi,http.cors,http.expires,http.filemanager,http.git,http.ipfilter,http.realip,tls.dns.cloudflare,tls.dns.digitalocean,tls.dns.dnspod,tls.dns.dyn,tls.dns.googlecloud,tls.dns.linode,tls.dns.namecheap,tls.dns.ovh,tls.dns.route53,tls.dns.vultr" \
|
||||
| tar --no-same-owner -C /usr/bin/ -xz caddy \
|
||||
&& mv /usr/bin/caddy /usr/bin/caddy \
|
||||
&& chmod 0755 /usr/bin/caddy
|
||||
|
||||
EXPOSE 80 443 2015
|
||||
|
||||
WORKDIR /var/www/public
|
||||
|
||||
CMD ["/usr/bin/caddy", "-conf", "/etc/Caddyfile"]
|
||||
16
cleanup.sh
Executable file
16
cleanup.sh
Executable file
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
##### WARNING !!! ###########################
|
||||
# YOU HAVE ALREADY KNOW WHAT YOU'RE DOING ! #
|
||||
# ------------------------------------------- #
|
||||
# This will remove all your saved environment #
|
||||
# without mercy ! #
|
||||
# ------------------------------------------- #
|
||||
|
||||
sudo rm -rf cache
|
||||
sudo rm -rf data
|
||||
sudo rm -rf session
|
||||
|
||||
git checkout cache
|
||||
git checkout data
|
||||
git checkout session
|
||||
0
config/adminer/.gitignore
vendored
Normal file
0
config/adminer/.gitignore
vendored
Normal file
176
config/deploy.rb
Normal file
176
config/deploy.rb
Normal file
@@ -0,0 +1,176 @@
|
||||
# config valid for current version and patch releases of Capistrano
|
||||
lock "~> 3.10.1"
|
||||
|
||||
set :application, "laradock"
|
||||
set :repo_url, "git@github.com:laradock/laradock.git"
|
||||
|
||||
# Default branch is :master
|
||||
set :branch, 'master'
|
||||
|
||||
# Default deploy_to directory is /var/www/my_app_name
|
||||
set :root_path, "/var/www"
|
||||
set :deploy_to, "#{ fetch(:root_path) }/production"
|
||||
set :current_folder, "#{ fetch(:deploy_to) }/current"
|
||||
set :shared_folder, "#{ fetch(:deploy_to) }/shared"
|
||||
set :releases_folder, "#{ fetch(:deploy_to) }/releases"
|
||||
set :tmp_dir, "#{ fetch(:deploy_to) }/tmp"
|
||||
|
||||
set :pty, true
|
||||
|
||||
# Default value for :linked_files is []
|
||||
append :linked_files, ".env", "composer.json", "package.json", "composer.phar"
|
||||
|
||||
# Default value for :linked_dirs []
|
||||
append :linked_dirs, "storage", "vendor"
|
||||
|
||||
# Default value for keep_releases is 5
|
||||
set :keep_releases, 5
|
||||
|
||||
set :rbenv_type, :user
|
||||
set :rbenv_ruby, '2.4.2'
|
||||
set :rbenv_prefix, "RBENV_ROOT=#{fetch(:rbenv_path)} RBENV_VERSION=#{fetch(:rbenv_ruby)} #{fetch(:rbenv_path)}/bin/rbenv exec"
|
||||
|
||||
namespace :deploy do
|
||||
desc 'Restart Deploy'
|
||||
task :restart do
|
||||
on roles(:web) do
|
||||
if test("[ -d #{ current_path }/storage ]")
|
||||
execute "chmod 777 -R #{ current_path }/storage"
|
||||
else
|
||||
info "Can't find: #{ current_path }/storage folder!"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
namespace :chown do
|
||||
desc 'Restore Ownership Folder'
|
||||
task :restore do
|
||||
on roles(:all) do
|
||||
if test("[ -d #{ release_path }/storage]")
|
||||
execute! :sudo, "chown www-data:www-data -R #{ release_path }/storage"
|
||||
else
|
||||
info "Can't find: #{ release_path }/storage folder!"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
task :change do
|
||||
on roles(:all) do
|
||||
if test("[ -d #{ current_path }/storage]")
|
||||
execute! :sudo, "chown www-data:www-data -R #{ current_path }/storage"
|
||||
else
|
||||
info "Can't find: #{ current_path }/storage folder!"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
namespace :nginx do
|
||||
desc 'Reload NGINX'
|
||||
task :manual_reload do
|
||||
on roles(:all) do
|
||||
sudo :service, :nginx, :reload
|
||||
end
|
||||
end
|
||||
|
||||
desc 'Restart NGINX'
|
||||
task :manual_start do
|
||||
on roles(:all), in: :sequence do
|
||||
execute! :sudo, :service, :nginx, :restart
|
||||
end
|
||||
end
|
||||
|
||||
task :manual_restart do
|
||||
on roles(:all) do
|
||||
invoke 'nginx:manual_reload'
|
||||
invoke 'nginx:manual_start'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
namespace :phpfpm do
|
||||
desc 'Reload PHP-FPM'
|
||||
task :manual_reload do
|
||||
on roles(:all) do
|
||||
sudo :service, :'php7.2-fpm', :reload
|
||||
end
|
||||
end
|
||||
|
||||
desc 'Restart PHP-FPM'
|
||||
task :manual_start do
|
||||
on roles(:all), in: :sequence do
|
||||
execute! :sudo, :service, :'php7.2-fpm', :restart
|
||||
end
|
||||
end
|
||||
|
||||
task :manual_restart do
|
||||
on roles(:all) do
|
||||
invoke 'phpfpm:manual_reload'
|
||||
invoke 'phpfpm:manual_start'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
namespace :composer do
|
||||
desc 'Install Composer'
|
||||
task :install do
|
||||
on roles(:all) do
|
||||
execute "cd #{ current_path }; composer install"
|
||||
end
|
||||
end
|
||||
|
||||
desc 'Update Composer'
|
||||
task :update do
|
||||
on roles(:all) do
|
||||
execute "cd #{ current_path }; composer self-update"
|
||||
end
|
||||
end
|
||||
|
||||
desc 'Dump Autoload Composer'
|
||||
task :dumpautoload do
|
||||
on roles(:all) do
|
||||
execute "cd #{ current_path }; composer dump-autoload -o"
|
||||
end
|
||||
end
|
||||
|
||||
task :initialize do
|
||||
on roles(:all) do
|
||||
invoke 'composer:install'
|
||||
invoke 'composer:dumpautoload'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
namespace :artisan do
|
||||
desc 'Clear View'
|
||||
task :clear_view do
|
||||
on roles(:all) do
|
||||
execute "cd #{ current_path }; php artisan view:clear"
|
||||
end
|
||||
end
|
||||
|
||||
desc 'Clear Cache'
|
||||
task :clear_cache do
|
||||
on roles(:all) do
|
||||
execute "cd #{ current_path }; php artisan cache:clear"
|
||||
end
|
||||
end
|
||||
|
||||
task :clear_all do
|
||||
on roles(:all) do
|
||||
invoke 'artisan:clear_view'
|
||||
invoke 'artisan:clear_cache'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
after 'deploy:publishing', 'deploy:restart'
|
||||
after 'deploy:restart', 'composer:initialize'
|
||||
after 'deploy:restart', 'artisan:clear_all'
|
||||
after 'deploy:restart', 'nginx:manual_restart'
|
||||
|
||||
after 'chown:restore', 'nginx:manual_restart'
|
||||
after 'chown:change', 'nginx:manual_restart'
|
||||
|
||||
after 'nginx:manual_restart', 'phpfpm:manual_restart'
|
||||
22
config/deploy/production.rb
Normal file
22
config/deploy/production.rb
Normal file
@@ -0,0 +1,22 @@
|
||||
server 'production', user: 'root', roles: %w{app web}
|
||||
|
||||
set :branch, 'master'
|
||||
|
||||
# Default deploy_to directory is /var/www/my_app_name
|
||||
set :root_path, "/var/www"
|
||||
set :deploy_to, "#{ fetch(:root_path) }/production"
|
||||
set :current_folder, "#{ fetch(:deploy_to) }/current"
|
||||
set :shared_folder, "#{ fetch(:deploy_to) }/shared"
|
||||
set :releases_folder, "#{ fetch(:deploy_to) }/releases"
|
||||
set :tmp_dir, "#{ fetch(:deploy_to) }/tmp"
|
||||
|
||||
set :pty, true
|
||||
|
||||
set :ssh_options, {
|
||||
forward_agent: true
|
||||
}
|
||||
|
||||
set :default_environment, {
|
||||
'PATH' => "$HOME/.rbenv/shims:$HOME/.rbenv/bin:$PATH"
|
||||
}
|
||||
|
||||
22
config/deploy/staging.rb
Normal file
22
config/deploy/staging.rb
Normal file
@@ -0,0 +1,22 @@
|
||||
server 'staging', user: 'root', roles: %w{app web}
|
||||
|
||||
set :branch, 'master'
|
||||
|
||||
# Default deploy_to directory is /var/www/my_app_name
|
||||
set :root_path, "/var/www"
|
||||
set :deploy_to, "#{ fetch(:root_path) }/staging"
|
||||
set :current_folder, "#{ fetch(:deploy_to) }/current"
|
||||
set :shared_folder, "#{ fetch(:deploy_to) }/shared"
|
||||
set :releases_folder, "#{ fetch(:deploy_to) }/releases"
|
||||
set :tmp_dir, "#{ fetch(:deploy_to) }/tmp"
|
||||
|
||||
set :pty, true
|
||||
|
||||
set :ssh_options, {
|
||||
forward_agent: true
|
||||
}
|
||||
|
||||
set :default_environment, {
|
||||
'PATH' => "$HOME/.rbenv/shims:$HOME/.rbenv/bin:$PATH"
|
||||
}
|
||||
|
||||
1
config/elasticsearch/2.4/elasticsearch.yml
Normal file
1
config/elasticsearch/2.4/elasticsearch.yml
Normal file
@@ -0,0 +1 @@
|
||||
network.host: 0.0.0.0
|
||||
15
config/elasticsearch/2.4/logging.yml
Normal file
15
config/elasticsearch/2.4/logging.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
# you can override this using by setting a system property, for example -Des.logger.level=DEBUG
|
||||
es.logger.level: INFO
|
||||
rootLogger: ${es.logger.level}, console
|
||||
logger:
|
||||
# log action execution errors for easier debugging
|
||||
action: DEBUG
|
||||
# reduce the logging for aws, too much is logged under the default INFO
|
||||
com.amazonaws: WARN
|
||||
|
||||
appender:
|
||||
console:
|
||||
type: console
|
||||
layout:
|
||||
type: consolePattern
|
||||
conversionPattern: "[%d{ISO8601}][%-5p][%-25c] %m%n"
|
||||
5
config/elasticsearch/5/elasticsearch.yml
Normal file
5
config/elasticsearch/5/elasticsearch.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
http.host: 0.0.0.0
|
||||
|
||||
# Uncomment the following lines for a production cluster deployment
|
||||
#transport.host: 0.0.0.0
|
||||
#discovery.zen.minimum_master_nodes: 1
|
||||
9
config/elasticsearch/5/log4j2.properties
Normal file
9
config/elasticsearch/5/log4j2.properties
Normal file
@@ -0,0 +1,9 @@
|
||||
status = error
|
||||
|
||||
appender.console.type = Console
|
||||
appender.console.name = console
|
||||
appender.console.layout.type = PatternLayout
|
||||
appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] %marker%m%n
|
||||
|
||||
rootLogger.level = info
|
||||
rootLogger.appenderRef.console.ref = console
|
||||
43
config/mongodb/mongodb.conf
Normal file
43
config/mongodb/mongodb.conf
Normal file
@@ -0,0 +1,43 @@
|
||||
# /etc/mongod.conf
|
||||
|
||||
# for documentation of all options, see:
|
||||
# http://docs.mongodb.org/manual/reference/configuration-options/
|
||||
|
||||
# Where and how to store data.
|
||||
storage:
|
||||
dbPath: /var/lib/mongodb
|
||||
journal:
|
||||
enabled: true
|
||||
# engine:
|
||||
# mmapv1:
|
||||
# wiredTiger:
|
||||
|
||||
# where to write logging data.
|
||||
systemLog:
|
||||
destination: file
|
||||
logAppend: true
|
||||
path: /var/log/mongodb/mongod.log
|
||||
|
||||
# network interfaces
|
||||
net:
|
||||
port: 27017
|
||||
bindIp: 127.0.0.1
|
||||
|
||||
# how the process runs
|
||||
processManagement:
|
||||
timeZoneInfo: /usr/share/zoneinfo
|
||||
|
||||
security:
|
||||
authorization: "enabled"
|
||||
|
||||
#operationProfiling:
|
||||
|
||||
#replication:
|
||||
|
||||
#sharding:
|
||||
|
||||
## Enterprise-Only Options:
|
||||
|
||||
#auditLog:
|
||||
|
||||
#snmp:
|
||||
3
config/mysql/conf.d/laradock.cnf
Normal file
3
config/mysql/conf.d/laradock.cnf
Normal file
@@ -0,0 +1,3 @@
|
||||
[mysqld]
|
||||
skip-host-cache
|
||||
skip-name-resolve
|
||||
31
config/mysql/my.cnf
Normal file
31
config/mysql/my.cnf
Normal file
@@ -0,0 +1,31 @@
|
||||
# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; version 2 of the License.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
#
|
||||
# The MySQL Server configuration file.
|
||||
#
|
||||
# For explanations see
|
||||
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
|
||||
|
||||
[mysqld]
|
||||
pid-file = /var/run/mysqld/mysqld.pid
|
||||
socket = /var/run/mysqld/mysqld.sock
|
||||
datadir = /var/lib/mysql
|
||||
secure-file-priv= NULL
|
||||
# Disabling symbolic-links is recommended to prevent assorted security risks
|
||||
symbolic-links=0
|
||||
|
||||
# Custom config should go here
|
||||
!includedir /etc/mysql/conf.d/
|
||||
128
config/nginx/nginx.conf
Normal file
128
config/nginx/nginx.conf
Normal file
@@ -0,0 +1,128 @@
|
||||
# /etc/nginx/nginx.conf
|
||||
|
||||
user www-data;
|
||||
# you must set worker processes based on your CPU cores, nginx does not benefit from setting more than that
|
||||
worker_processes 8; #some last versions calculate it automatically
|
||||
|
||||
# number of file descriptors used for nginx
|
||||
# the limit for the maximum FDs on the server is usually set by the OS.
|
||||
# if you don't set FD's then OS settings will be used which is by default 2000
|
||||
# worker_rlimit_nofile 300000;
|
||||
worker_rlimit_nofile 30000;
|
||||
|
||||
pid /run/nginx.pid;
|
||||
|
||||
# provides the configuration file context in which the directives that affect connection processing are specified.
|
||||
events {
|
||||
# determines how much clients will be served per worker
|
||||
# max clients = worker_connections * worker_processes
|
||||
# max clients is also limited by the number of socket connections available on the system (~64k)
|
||||
# worker_connections 4000;
|
||||
worker_connections 8192;
|
||||
|
||||
# optmized to serve many clients with each thread, essential for linux -- for testing environment
|
||||
use epoll;
|
||||
|
||||
# accept as many connections as possible, may flood worker connections if set too low -- for testing environment
|
||||
multi_accept on;
|
||||
}
|
||||
|
||||
http {
|
||||
##
|
||||
# Logging Settings
|
||||
##
|
||||
access_log /var/log/nginx/access.log;
|
||||
error_log /var/log/nginx/error.log;
|
||||
|
||||
# cache informations about FDs, frequently accessed files
|
||||
# can boost performance, but you need to test those values
|
||||
open_file_cache max=200000 inactive=20s;
|
||||
open_file_cache_valid 30s;
|
||||
open_file_cache_min_uses 2;
|
||||
open_file_cache_errors on;
|
||||
|
||||
# to boost I/O on HDD we can disable access logs
|
||||
access_log off;
|
||||
|
||||
# copies data between one FD and other from within the kernel
|
||||
# faster then read() + write()
|
||||
sendfile on;
|
||||
|
||||
# send headers in one peace, its better then sending them one by one
|
||||
tcp_nopush on;
|
||||
|
||||
# don't buffer data sent, good for small data bursts in real time
|
||||
tcp_nodelay on;
|
||||
|
||||
##
|
||||
# Gzip Settings
|
||||
##
|
||||
# reduce the data that needs to be sent over network -- for testing environment
|
||||
gzip on;
|
||||
gzip_min_length 10240;
|
||||
gzip_proxied expired no-cache no-store private auth;
|
||||
gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/json application/xml;
|
||||
gzip_disable msie6;
|
||||
|
||||
# allow the server to close connection on non responding client, this will free up memory
|
||||
reset_timedout_connection on;
|
||||
|
||||
# request timed out -- default 60
|
||||
# client_body_timeout 10;
|
||||
|
||||
# if client stop responding, free up memory -- default 60
|
||||
send_timeout 2;
|
||||
|
||||
# server will close connection after this time -- default 75
|
||||
keepalive_timeout 65;
|
||||
|
||||
# number of requests client can make over keep-alive -- for testing environment
|
||||
keepalive_requests 100000;
|
||||
|
||||
types_hash_max_size 2048;
|
||||
server_tokens off;
|
||||
|
||||
server_names_hash_bucket_size 64;
|
||||
# server_name_in_redirect off;
|
||||
|
||||
include /etc/nginx/mime.types;
|
||||
default_type application/octet-stream;
|
||||
|
||||
# ANTI DDoS
|
||||
# limit the number of connections per single IP
|
||||
limit_conn_zone $binary_remote_addr zone=conn_limit_per_ip:10m;
|
||||
|
||||
# limit the number of requests for a given session
|
||||
limit_req_zone $binary_remote_addr zone=req_limit_per_ip:10m rate=5r/s;
|
||||
|
||||
# zone which we want to limit by upper values, we want limit whole server
|
||||
server {
|
||||
limit_conn conn_limit_per_ip 10;
|
||||
limit_req zone=req_limit_per_ip burst=10 nodelay;
|
||||
}
|
||||
|
||||
# if the request body size is more than the buffer size, then the entire (or partial)
|
||||
# request body is written into a temporary file
|
||||
client_body_buffer_size 128k;
|
||||
|
||||
# headerbuffer size for the request header from client -- for testing environment
|
||||
client_header_buffer_size 300m;
|
||||
|
||||
# maximum number and size of buffers for large headers to read from client request
|
||||
large_client_header_buffers 4 256k;
|
||||
|
||||
# read timeout for the request body from client -- for testing environment
|
||||
client_body_timeout 3m;
|
||||
|
||||
# how long to wait for the client to send a request header -- for testing environment
|
||||
client_header_timeout 3m;
|
||||
|
||||
fastcgi_buffers 64 16k;
|
||||
fastcgi_buffer_size 32k;
|
||||
fastcgi_connect_timeout 300;
|
||||
fastcgi_send_timeout 300;
|
||||
fastcgi_read_timeout 300;
|
||||
|
||||
include /etc/nginx/conf.d/*.conf;
|
||||
include /etc/nginx/sites-enabled/*;
|
||||
}
|
||||
0
config/nginx/phpfpm/.gitignore
vendored
Normal file
0
config/nginx/phpfpm/.gitignore
vendored
Normal file
34
config/nginx/phpfpm/laradock.conf
Normal file
34
config/nginx/phpfpm/laradock.conf
Normal file
@@ -0,0 +1,34 @@
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80 ipv6only=on;
|
||||
server_name laradock.localhost;
|
||||
|
||||
access_log /var/log/nginx/access.log;
|
||||
error_log /var/log/nginx/error.log;
|
||||
|
||||
root /var/www/public;
|
||||
index index.php;
|
||||
|
||||
client_max_body_size 25M;
|
||||
fastcgi_read_timeout 1800;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.php$is_args$args;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
try_files $uri =404;
|
||||
fastcgi_pass workspace:9000;
|
||||
fastcgi_index index.php;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
include /etc/nginx/fastcgi_params;
|
||||
}
|
||||
|
||||
location /php/fpm/status {
|
||||
fastcgi_pass workspace:9000;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
include /etc/nginx/fastcgi_params;
|
||||
}
|
||||
|
||||
}
|
||||
0
config/nginx/puma/.gitignore
vendored
Normal file
0
config/nginx/puma/.gitignore
vendored
Normal file
65
config/nginx/puma/production
Normal file
65
config/nginx/puma/production
Normal file
@@ -0,0 +1,65 @@
|
||||
upstream faye_server {
|
||||
server laradock.com:9292;
|
||||
}
|
||||
|
||||
upstream production {
|
||||
server unix:/home/deploy/laradock/current/tmp/sockets/puma-production.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80 ipv6only=on;
|
||||
server_name laradock.com;
|
||||
root /home/deploy/laradock/current/public;
|
||||
|
||||
client_max_body_size 300M;
|
||||
keepalive_timeout 120;
|
||||
send_timeout 120;
|
||||
underscores_in_headers on;
|
||||
|
||||
error_page 500 /500.html;
|
||||
try_files /system/maintenance.html $uri/index.html $uri @puma;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
chunked_transfer_encoding off;
|
||||
proxy_buffering off;
|
||||
proxy_cache off;
|
||||
|
||||
proxy_connect_timeout 43200000;
|
||||
proxy_read_timeout 43200000;
|
||||
proxy_send_timeout 43200000;
|
||||
|
||||
location ~ ^/(assets)/ {
|
||||
root /home/deploy/laradock/current/public;
|
||||
gzip_static on;
|
||||
expires 1y;
|
||||
add_header Cache-Control public;
|
||||
break;
|
||||
}
|
||||
|
||||
location @puma {
|
||||
proxy_set_header X-Request-Start "t=${msec}000";
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
proxy_pass http://production;
|
||||
}
|
||||
|
||||
location /pub-sub {
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
|
||||
proxy_pass http://faye_server;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
if ($http_user_agent ~* (EasouSpider) ) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
}
|
||||
68
config/nginx/puma/production-ssl
Normal file
68
config/nginx/puma/production-ssl
Normal file
@@ -0,0 +1,68 @@
|
||||
upstream faye_server {
|
||||
server laradock.com:9292;
|
||||
}
|
||||
|
||||
upstream production {
|
||||
server unix:/home/deploy/laradock/current/tmp/sockets/puma-production.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443;
|
||||
ssl on;
|
||||
ssl_certificate /etc/ssl/star_laradock_com.pem;
|
||||
ssl_certificate_key /etc/ssl/laradock.key;
|
||||
|
||||
server_name laradock.com;
|
||||
root /home/deploy/laradock/current/public;
|
||||
|
||||
client_max_body_size 300M;
|
||||
keepalive_timeout 120;
|
||||
send_timeout 120;
|
||||
|
||||
error_page 500 /500.html;
|
||||
try_files /system/maintenance.html $uri/index.html $uri @puma;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
chunked_transfer_encoding off;
|
||||
proxy_buffering off;
|
||||
proxy_cache off;
|
||||
|
||||
proxy_connect_timeout 43200000;
|
||||
proxy_read_timeout 43200000;
|
||||
proxy_send_timeout 43200000;
|
||||
|
||||
location ~ ^/(assets)/ {
|
||||
root /home/deploy/laradock/current/public;
|
||||
gzip_static on;
|
||||
expires 1y;
|
||||
add_header Cache-Control public;
|
||||
break;
|
||||
}
|
||||
|
||||
location @puma {
|
||||
proxy_set_header X-Forwarded-Proto https;
|
||||
proxy_set_header X-Request-Start "t=${msec}000";
|
||||
proxy_set_header X-Forwarded-Forr $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
proxy_pass http://staging;
|
||||
}
|
||||
|
||||
location /pub-sub {
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
|
||||
proxy_pass http://faye_server;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
if ($http_user_agent ~* (EasouSpider) ) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
}
|
||||
65
config/nginx/puma/staging
Normal file
65
config/nginx/puma/staging
Normal file
@@ -0,0 +1,65 @@
|
||||
upstream faye_server {
|
||||
server laradock.localhost:9292;
|
||||
}
|
||||
|
||||
upstream staging {
|
||||
server unix:/home/deploy/laradock.dev/current/tmp/sockets/puma-staging.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80 ipv6only=on;
|
||||
server_name laradock.localhost;
|
||||
root /home/deploy/laradock.dev/current/public;
|
||||
|
||||
client_max_body_size 300M;
|
||||
keepalive_timeout 120;
|
||||
send_timeout 120;
|
||||
underscores_in_headers on;
|
||||
|
||||
error_page 500 /500.html;
|
||||
try_files /system/maintenance.html $uri/index.html $uri @puma;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
chunked_transfer_encoding off;
|
||||
proxy_buffering off;
|
||||
proxy_cache off;
|
||||
|
||||
proxy_connect_timeout 43200000;
|
||||
proxy_read_timeout 43200000;
|
||||
proxy_send_timeout 43200000;
|
||||
|
||||
location ~ ^/(assets)/ {
|
||||
root /home/deploy/laradock.dev/current/public;
|
||||
gzip_static on;
|
||||
expires 1y;
|
||||
add_header Cache-Control public;
|
||||
break;
|
||||
}
|
||||
|
||||
location @puma {
|
||||
proxy_set_header X-Request-Start "t=${msec}000";
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
proxy_pass http://staging;
|
||||
}
|
||||
|
||||
location /pub-sub {
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
|
||||
proxy_pass http://faye_server;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
if ($http_user_agent ~* (EasouSpider) ) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
}
|
||||
68
config/nginx/puma/staging-ssl
Normal file
68
config/nginx/puma/staging-ssl
Normal file
@@ -0,0 +1,68 @@
|
||||
upstream faye_server {
|
||||
server laradock.localhost:9292;
|
||||
}
|
||||
|
||||
upstream staging {
|
||||
server unix:/home/deploy/laradock.dev/current/tmp/sockets/puma-staging.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443;
|
||||
ssl on;
|
||||
ssl_certificate /etc/ssl/star_laradock_com.pem;
|
||||
ssl_certificate_key /etc/ssl/laradock.key;
|
||||
|
||||
server_name laradock.localhost;
|
||||
root /home/deploy/laradock.dev/current/public;
|
||||
|
||||
client_max_body_size 300M;
|
||||
keepalive_timeout 120;
|
||||
send_timeout 120;
|
||||
|
||||
error_page 500 /500.html;
|
||||
try_files /system/maintenance.html $uri/index.html $uri @puma;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
chunked_transfer_encoding off;
|
||||
proxy_buffering off;
|
||||
proxy_cache off;
|
||||
|
||||
proxy_connect_timeout 43200000;
|
||||
proxy_read_timeout 43200000;
|
||||
proxy_send_timeout 43200000;
|
||||
|
||||
location ~ ^/(assets)/ {
|
||||
root /home/deploy/laradock.dev/current/public;
|
||||
gzip_static on;
|
||||
expires 1y;
|
||||
add_header Cache-Control public;
|
||||
break;
|
||||
}
|
||||
|
||||
location @puma {
|
||||
proxy_set_header X-Forwarded-Proto https;
|
||||
proxy_set_header X-Request-Start "t=${msec}000";
|
||||
proxy_set_header X-Forwarded-Forr $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
proxy_pass http://staging;
|
||||
}
|
||||
|
||||
location /pub-sub {
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
|
||||
proxy_pass http://faye_server;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
if ($http_user_agent ~* (EasouSpider) ) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
}
|
||||
0
config/nginx/unicorn/.gitignore
vendored
Normal file
0
config/nginx/unicorn/.gitignore
vendored
Normal file
65
config/nginx/unicorn/production
Normal file
65
config/nginx/unicorn/production
Normal file
@@ -0,0 +1,65 @@
|
||||
upstream faye_server {
|
||||
server laradock.com:9292;
|
||||
}
|
||||
|
||||
upstream production {
|
||||
server unix:/home/deploy/laradock/current/tmp/sockets/unicorn-production.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80 ipv6only=on;
|
||||
server_name laradock.com;
|
||||
root /home/deploy/laradock/current/public;
|
||||
|
||||
client_max_body_size 300M;
|
||||
keepalive_timeout 120;
|
||||
send_timeout 120;
|
||||
underscores_in_headers on;
|
||||
|
||||
error_page 500 /500.html;
|
||||
try_files /system/maintenance.html $uri/index.html $uri @unicorn;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
chunked_transfer_encoding off;
|
||||
proxy_buffering off;
|
||||
proxy_cache off;
|
||||
|
||||
proxy_connect_timeout 43200000;
|
||||
proxy_read_timeout 43200000;
|
||||
proxy_send_timeout 43200000;
|
||||
|
||||
location ~ ^/(assets)/ {
|
||||
root /home/deploy/laradock/current/public;
|
||||
gzip_static on;
|
||||
expires 1y;
|
||||
add_header Cache-Control public;
|
||||
break;
|
||||
}
|
||||
|
||||
location @unicorn {
|
||||
proxy_set_header X-Request-Start "t=${msec}000";
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
proxy_pass http://production;
|
||||
}
|
||||
|
||||
location /pub-sub {
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
|
||||
proxy_pass http://faye_server;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
if ($http_user_agent ~* (EasouSpider) ) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
}
|
||||
68
config/nginx/unicorn/production-ssl
Normal file
68
config/nginx/unicorn/production-ssl
Normal file
@@ -0,0 +1,68 @@
|
||||
upstream faye_server {
|
||||
server laradock.com:9292;
|
||||
}
|
||||
|
||||
upstream production {
|
||||
server unix:/home/deploy/laradock/current/tmp/sockets/unicorn-production.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443;
|
||||
ssl on;
|
||||
ssl_certificate /etc/ssl/star_laradock_com.pem;
|
||||
ssl_certificate_key /etc/ssl/laradock.key;
|
||||
|
||||
server_name laradock.com;
|
||||
root /home/deploy/laradock/current/public;
|
||||
|
||||
client_max_body_size 300M;
|
||||
keepalive_timeout 120;
|
||||
send_timeout 120;
|
||||
|
||||
error_page 500 /500.html;
|
||||
try_files /system/maintenance.html $uri/index.html $uri @unicorn;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
chunked_transfer_encoding off;
|
||||
proxy_buffering off;
|
||||
proxy_cache off;
|
||||
|
||||
proxy_connect_timeout 43200000;
|
||||
proxy_read_timeout 43200000;
|
||||
proxy_send_timeout 43200000;
|
||||
|
||||
location ~ ^/(assets)/ {
|
||||
root /home/deploy/laradock/current/public;
|
||||
gzip_static on;
|
||||
expires 1y;
|
||||
add_header Cache-Control public;
|
||||
break;
|
||||
}
|
||||
|
||||
location @unicorn {
|
||||
proxy_set_header X-Forwarded-Proto https;
|
||||
proxy_set_header X-Request-Start "t=${msec}000";
|
||||
proxy_set_header X-Forwarded-Forr $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
proxy_pass http://production;
|
||||
}
|
||||
|
||||
location /pub-sub {
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
|
||||
proxy_pass http://faye_server;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
if ($http_user_agent ~* (EasouSpider) ) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
}
|
||||
65
config/nginx/unicorn/staging
Normal file
65
config/nginx/unicorn/staging
Normal file
@@ -0,0 +1,65 @@
|
||||
upstream faye_server {
|
||||
server laradock.localhost:9292;
|
||||
}
|
||||
|
||||
upstream staging {
|
||||
server unix:/home/deploy/laradock.dev/current/tmp/sockets/unicorn-staging.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80 ipv6only=on;
|
||||
server_name laradock.localhost;
|
||||
root /home/deploy/laradock.dev/current/public;
|
||||
|
||||
client_max_body_size 300M;
|
||||
keepalive_timeout 120;
|
||||
send_timeout 120;
|
||||
underscores_in_headers on;
|
||||
|
||||
error_page 500 /500.html;
|
||||
try_files /system/maintenance.html $uri/index.html $uri @unicorn;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
chunked_transfer_encoding off;
|
||||
proxy_buffering off;
|
||||
proxy_cache off;
|
||||
|
||||
proxy_connect_timeout 43200000;
|
||||
proxy_read_timeout 43200000;
|
||||
proxy_send_timeout 43200000;
|
||||
|
||||
location ~ ^/(assets)/ {
|
||||
root /home/deploy/laradock.dev/current/public;
|
||||
gzip_static on;
|
||||
expires 1y;
|
||||
add_header Cache-Control public;
|
||||
break;
|
||||
}
|
||||
|
||||
location @unicorn {
|
||||
proxy_set_header X-Request-Start "t=${msec}000";
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
proxy_pass http://staging;
|
||||
}
|
||||
|
||||
location /pub-sub {
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
|
||||
proxy_pass http://faye_server;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
if ($http_user_agent ~* (EasouSpider) ) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
}
|
||||
68
config/nginx/unicorn/staging-ssl
Normal file
68
config/nginx/unicorn/staging-ssl
Normal file
@@ -0,0 +1,68 @@
|
||||
upstream faye_server {
|
||||
server laradock.localhost:9292;
|
||||
}
|
||||
|
||||
upstream staging {
|
||||
server unix:/home/deploy/laradock.dev/current/tmp/sockets/unicorn-staging.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443;
|
||||
ssl on;
|
||||
ssl_certificate /etc/ssl/star_laradock_com.pem;
|
||||
ssl_certificate_key /etc/ssl/laradock.key;
|
||||
|
||||
server_name laradock.localhost;
|
||||
root /home/deploy/laradock.dev/current/public;
|
||||
|
||||
client_max_body_size 300M;
|
||||
keepalive_timeout 120;
|
||||
send_timeout 120;
|
||||
|
||||
error_page 500 /500.html;
|
||||
try_files /system/maintenance.html $uri/index.html $uri @unicorn;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
chunked_transfer_encoding off;
|
||||
proxy_buffering off;
|
||||
proxy_cache off;
|
||||
|
||||
proxy_connect_timeout 43200000;
|
||||
proxy_read_timeout 43200000;
|
||||
proxy_send_timeout 43200000;
|
||||
|
||||
location ~ ^/(assets)/ {
|
||||
root /home/deploy/laradock.dev/current/public;
|
||||
gzip_static on;
|
||||
expires 1y;
|
||||
add_header Cache-Control public;
|
||||
break;
|
||||
}
|
||||
|
||||
location @unicorn {
|
||||
proxy_set_header X-Forwarded-Proto https;
|
||||
proxy_set_header X-Request-Start "t=${msec}000";
|
||||
proxy_set_header X-Forwarded-Forr $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
proxy_pass http://staging;
|
||||
}
|
||||
|
||||
location /pub-sub {
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_redirect off;
|
||||
|
||||
proxy_pass http://faye_server;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
if ($http_user_agent ~* (EasouSpider) ) {
|
||||
return 403;
|
||||
}
|
||||
|
||||
}
|
||||
0
config/nodejs/.gitignore
vendored
Normal file
0
config/nodejs/.gitignore
vendored
Normal file
11
config/php/laradock-php-ext-xdebug.ini
Normal file
11
config/php/laradock-php-ext-xdebug.ini
Normal file
@@ -0,0 +1,11 @@
|
||||
;zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so
|
||||
xdebug.remote_autostart=1
|
||||
xdebug.remote_port=9090
|
||||
xdebug.remote_host=127.0.0.1
|
||||
xdebug.remote_enable=1
|
||||
xdebug.profiler_enable=1
|
||||
xdebug.profiler_output_dir=/var/log/xdebug
|
||||
xdebug.remote_handler=dbgp
|
||||
xdebug.remote_autostart=1
|
||||
xdebug.remote_connect_back=0
|
||||
xdebug.idekey=PHPSTORM
|
||||
24
config/php/php-fpm.conf
Normal file
24
config/php/php-fpm.conf
Normal file
@@ -0,0 +1,24 @@
|
||||
[global]
|
||||
error_log = /var/log/php-fpm/fpm-error.log
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
user = www-data
|
||||
group = www-data
|
||||
listen = [::]:9000
|
||||
|
||||
pm = dynamic
|
||||
pm.max_children = 5
|
||||
pm.start_servers = 2
|
||||
pm.min_spare_servers = 1
|
||||
pm.max_spare_servers = 3
|
||||
pm.status_path = /php/fpm/status
|
||||
|
||||
clear_env = no
|
||||
|
||||
access.log = /var/log/php-fpm/access.log
|
||||
access.format = "%t \"%m %r%Q%q\" %s %{mili}dms %{kilo}Mkb %C%%"
|
||||
catch_workers_output = yes
|
||||
|
||||
php_flag[display_errors] = on
|
||||
php_admin_value[date.timezone] = "Europe/London"
|
||||
7
config/php/php.ini
Normal file
7
config/php/php.ini
Normal file
@@ -0,0 +1,7 @@
|
||||
[PHP]
|
||||
short_open_tag = off
|
||||
|
||||
[Date]
|
||||
date.timezone = "Europe/London"
|
||||
|
||||
;zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so
|
||||
0
config/phpmyadmin/.gitignore
vendored
Normal file
0
config/phpmyadmin/.gitignore
vendored
Normal file
156
config/phpmyadmin/config.inc.php
Normal file
156
config/phpmyadmin/config.inc.php
Normal file
@@ -0,0 +1,156 @@
|
||||
<?php
|
||||
/* vim: set expandtab sw=4 ts=4 sts=4: */
|
||||
/**
|
||||
* phpMyAdmin sample configuration, you can use it as base for
|
||||
* manual configuration. For easier setup you can use setup/
|
||||
*
|
||||
* All directives are explained in documentation in the doc/ folder
|
||||
* or at <https://docs.phpmyadmin.net/>.
|
||||
*
|
||||
* @package PhpMyAdmin
|
||||
*/
|
||||
|
||||
/**
|
||||
* This is needed for cookie based authentication to encrypt password in
|
||||
* cookie. Needs to be 32 chars long.
|
||||
*/
|
||||
$cfg['blowfish_secret'] = 'abcdefghijklmnopqwertuvwxyz1234567890'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
|
||||
|
||||
/**
|
||||
* Servers configuration
|
||||
*/
|
||||
$i = 0;
|
||||
|
||||
/**
|
||||
* First server
|
||||
*/
|
||||
$i++;
|
||||
/* Authentication type */
|
||||
$cfg['Servers'][$i]['auth_type'] = 'cookie';
|
||||
/* Server parameters */
|
||||
$cfg['Servers'][$i]['host'] = 'mariadb'; // mysql, mariadb, percona
|
||||
$cfg['Servers'][$i]['compress'] = false;
|
||||
$cfg['Servers'][$i]['AllowNoPassword'] = false;
|
||||
$cfg['Servers'][$i]['user'] = 'laradock';
|
||||
$cfg['Servers'][$i]['password'] = 'password';
|
||||
|
||||
/**
|
||||
* phpMyAdmin configuration storage settings.
|
||||
*/
|
||||
|
||||
/* User used to manipulate with storage */
|
||||
// $cfg['Servers'][$i]['controlhost'] = '';
|
||||
// $cfg['Servers'][$i]['controlport'] = '';
|
||||
// $cfg['Servers'][$i]['controluser'] = 'laradock';
|
||||
// $cfg['Servers'][$i]['controlpass'] = 'password';
|
||||
|
||||
/* Storage database and tables */
|
||||
// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
|
||||
// $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
|
||||
// $cfg['Servers'][$i]['relation'] = 'pma__relation';
|
||||
// $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
|
||||
// $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
|
||||
// $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
|
||||
// $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
|
||||
// $cfg['Servers'][$i]['history'] = 'pma__history';
|
||||
// $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
|
||||
// $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
|
||||
// $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
|
||||
// $cfg['Servers'][$i]['recent'] = 'pma__recent';
|
||||
// $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
|
||||
// $cfg['Servers'][$i]['users'] = 'pma__users';
|
||||
// $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
|
||||
// $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
|
||||
// $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
|
||||
// $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
|
||||
// $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
|
||||
// $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
|
||||
|
||||
/**
|
||||
* End of servers configuration
|
||||
*/
|
||||
|
||||
/**
|
||||
* Directories for saving/loading files from server
|
||||
*/
|
||||
$cfg['UploadDir'] = '';
|
||||
$cfg['SaveDir'] = '';
|
||||
|
||||
/**
|
||||
* Whether to display icons or text or both icons and text in table row
|
||||
* action segment. Value can be either of 'icons', 'text' or 'both'.
|
||||
* default = 'both'
|
||||
*/
|
||||
//$cfg['RowActionType'] = 'icons';
|
||||
|
||||
/**
|
||||
* Defines whether a user should be displayed a "show all (records)"
|
||||
* button in browse mode or not.
|
||||
* default = false
|
||||
*/
|
||||
//$cfg['ShowAll'] = true;
|
||||
|
||||
/**
|
||||
* Number of rows displayed when browsing a result set. If the result
|
||||
* set contains more rows, "Previous" and "Next".
|
||||
* Possible values: 25, 50, 100, 250, 500
|
||||
* default = 25
|
||||
*/
|
||||
//$cfg['MaxRows'] = 50;
|
||||
|
||||
/**
|
||||
* Disallow editing of binary fields
|
||||
* valid values are:
|
||||
* false allow editing
|
||||
* 'blob' allow editing except for BLOB fields
|
||||
* 'noblob' disallow editing except for BLOB fields
|
||||
* 'all' disallow editing
|
||||
* default = 'blob'
|
||||
*/
|
||||
//$cfg['ProtectBinary'] = false;
|
||||
|
||||
/**
|
||||
* Default language to use, if not browser-defined or user-defined
|
||||
* (you find all languages in the locale folder)
|
||||
* uncomment the desired line:
|
||||
* default = 'en'
|
||||
*/
|
||||
//$cfg['DefaultLang'] = 'en';
|
||||
//$cfg['DefaultLang'] = 'de';
|
||||
|
||||
/**
|
||||
* How many columns should be used for table display of a database?
|
||||
* (a value larger than 1 results in some information being hidden)
|
||||
* default = 1
|
||||
*/
|
||||
//$cfg['PropertiesNumColumns'] = 2;
|
||||
|
||||
/**
|
||||
* Set to true if you want DB-based query history.If false, this utilizes
|
||||
* JS-routines to display query history (lost by window close)
|
||||
*
|
||||
* This requires configuration storage enabled, see above.
|
||||
* default = false
|
||||
*/
|
||||
//$cfg['QueryHistoryDB'] = true;
|
||||
|
||||
/**
|
||||
* When using DB-based query history, how many entries should be kept?
|
||||
* default = 25
|
||||
*/
|
||||
//$cfg['QueryHistoryMax'] = 100;
|
||||
|
||||
/**
|
||||
* Whether or not to query the user before sending the error report to
|
||||
* the phpMyAdmin team when a JavaScript error occurs
|
||||
*
|
||||
* Available options
|
||||
* ('ask' | 'always' | 'never')
|
||||
* default = 'ask'
|
||||
*/
|
||||
//$cfg['SendErrorReports'] = 'always';
|
||||
|
||||
/**
|
||||
* You can find more configuration options in the documentation
|
||||
* in the doc/ folder or at <https://docs.phpmyadmin.net/>.
|
||||
*/
|
||||
0
config/postgresql/.gitignore
vendored
Normal file
0
config/postgresql/.gitignore
vendored
Normal file
0
config/redis/.gitignore
vendored
Normal file
0
config/redis/.gitignore
vendored
Normal file
0
config/ruby/.gitignore
vendored
Normal file
0
config/ruby/.gitignore
vendored
Normal file
0
config/vim/.gitignore
vendored
Normal file
0
config/vim/.gitignore
vendored
Normal file
8
docker-compose.sync.yml
Normal file
8
docker-compose.sync.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
version: '3.2'
|
||||
|
||||
services:
|
||||
|
||||
volumes:
|
||||
applications-sync:
|
||||
external:
|
||||
name: "applications-docker-sync"
|
||||
@@ -1,84 +1,144 @@
|
||||
version: '2'
|
||||
version: '3.2'
|
||||
|
||||
networks:
|
||||
frontend:
|
||||
driver: ${NETWORKS_DRIVER}
|
||||
backend:
|
||||
driver: ${NETWORKS_DRIVER}
|
||||
|
||||
volumes:
|
||||
mysql:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
percona:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
mssql:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
postgres:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
memcached:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
redis:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
neo4j:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
mariadb:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
mongo:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
minio:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
rethinkdb:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
phpmyadmin:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
adminer:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
aerospike:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
caddy:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
elasticsearch:
|
||||
driver: ${VOLUMES_DRIVER}
|
||||
|
||||
services:
|
||||
|
||||
### Applications Code Container #############################
|
||||
|
||||
applications:
|
||||
image: tianon/true
|
||||
volumes:
|
||||
- ${APPLICATION}:/var/www
|
||||
|
||||
### Workspace Utilities Container ###########################
|
||||
|
||||
### Workspace Utilities ##################################
|
||||
workspace:
|
||||
build:
|
||||
context: ./workspace
|
||||
context: ./docker/workspace
|
||||
args:
|
||||
- PHP_VERSION=${PHP_VERSION}
|
||||
- INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
|
||||
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
||||
- INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
|
||||
- INSTALL_LDAP=${WORKSPACE_INSTALL_LDAP}
|
||||
- INSTALL_IMAP=${WORKSPACE_INSTALL_IMAP}
|
||||
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
|
||||
- INSTALL_AMQP=${WORKSPACE_INSTALL_AMQP}
|
||||
- INSTALL_PHPREDIS=${WORKSPACE_INSTALL_PHPREDIS}
|
||||
- INSTALL_MSSQL=${WORKSPACE_INSTALL_MSSQL}
|
||||
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
|
||||
- NPM_REGISTRY=${WORKSPACE_NPM_REGISTRY}
|
||||
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
|
||||
- INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
|
||||
- INSTALL_AEROSPIKE_EXTENSION=${WORKSPACE_INSTALL_AEROSPIKE_EXTENSION}
|
||||
- INSTALL_V8JS_EXTENSION=${WORKSPACE_INSTALL_V8JS_EXTENSION}
|
||||
- INSTALL_DRUPAL_CONSOLE=${WORKSPACE_INSTALL_DRUPAL_CONSOLE}
|
||||
- INSTALL_AEROSPIKE=${WORKSPACE_INSTALL_AEROSPIKE}
|
||||
- INSTALL_V8JS=${WORKSPACE_INSTALL_V8JS}
|
||||
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
|
||||
- COMPOSER_REPO_PACKAGIST=${WORKSPACE_COMPOSER_REPO_PACKAGIST}
|
||||
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
|
||||
- INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
|
||||
- INSTALL_LARAVEL_INSTALLER=${WORKSPACE_INSTALL_LARAVEL_INSTALLER}
|
||||
- INSTALL_DEPLOYER=${WORKSPACE_INSTALL_DEPLOYER}
|
||||
- INSTALL_PRESTISSIMO=${WORKSPACE_INSTALL_PRESTISSIMO}
|
||||
- INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LINUXBREW}
|
||||
- INSTALL_MC=${WORKSPACE_INSTALL_MC}
|
||||
- INSTALL_SYMFONY=${WORKSPACE_INSTALL_SYMFONY}
|
||||
- INSTALL_PYTHON=${WORKSPACE_INSTALL_PYTHON}
|
||||
- INSTALL_IMAGE_OPTIMIZERS=${WORKSPACE_INSTALL_IMAGE_OPTIMIZERS}
|
||||
- INSTALL_IMAGEMAGICK=${WORKSPACE_INSTALL_IMAGEMAGICK}
|
||||
- INSTALL_TERRAFORM=${WORKSPACE_INSTALL_TERRAFORM}
|
||||
- INSTALL_DUSK_DEPS=${WORKSPACE_INSTALL_DUSK_DEPS}
|
||||
- INSTALL_PG_CLIENT=${WORKSPACE_INSTALL_PG_CLIENT}
|
||||
- INSTALL_SWOOLE=${WORKSPACE_INSTALL_SWOOLE}
|
||||
- PUID=${WORKSPACE_PUID}
|
||||
- PGID=${WORKSPACE_PGID}
|
||||
- CHROME_DRIVER_VERSION=${WORKSPACE_CHROME_DRIVER_VERSION}
|
||||
- NODE_VERSION=${WORKSPACE_NODE_VERSION}
|
||||
- YARN_VERSION=${WORKSPACE_YARN_VERSION}
|
||||
- TZ=${WORKSPACE_TIMEZONE}
|
||||
- BLACKFIRE_CLIENT_ID=${BLACKFIRE_CLIENT_ID}
|
||||
- BLACKFIRE_CLIENT_TOKEN=${BLACKFIRE_CLIENT_TOKEN}
|
||||
dockerfile: "Dockerfile-${PHP_VERSION}"
|
||||
volumes_from:
|
||||
- applications
|
||||
- DRUSH_VERSION=${DRUSH_VERSION}
|
||||
volumes:
|
||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||
extra_hosts:
|
||||
- "dockerhost:${DOCKER_HOST_IP}"
|
||||
ports:
|
||||
- "${WORKSPACE_SSH_PORT}:22"
|
||||
tty: true
|
||||
environment:
|
||||
- PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### PHP-FPM Container #######################################
|
||||
|
||||
### PHP-FPM ##############################################
|
||||
php-fpm:
|
||||
build:
|
||||
context: ./php-fpm
|
||||
context: ./docker/php-fpm
|
||||
args:
|
||||
- PHP_VERSION=${PHP_VERSION}
|
||||
- INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
|
||||
- INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE}
|
||||
- INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
|
||||
- INSTALL_IMAP=${PHP_FPM_INSTALL_IMAP}
|
||||
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
|
||||
- INSTALL_AMQP=${PHP_FPM_INSTALL_AMQP}
|
||||
- INSTALL_MSSQL=${PHP_FPM_INSTALL_MSSQL}
|
||||
- INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
|
||||
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
|
||||
- INSTALL_GMP=${PHP_FPM_INSTALL_GMP}
|
||||
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
|
||||
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
|
||||
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
|
||||
- INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
|
||||
- INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION}
|
||||
- INSTALL_AEROSPIKE=${PHP_FPM_INSTALL_AEROSPIKE}
|
||||
- INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI}
|
||||
- INSTALL_PGSQL=${PHP_FPM_INSTALL_PGSQL}
|
||||
- INSTALL_PG_CLIENT=${PHP_FPM_INSTALL_PG_CLIENT}
|
||||
- INSTALL_TOKENIZER=${PHP_FPM_INSTALL_TOKENIZER}
|
||||
- INSTALL_INTL=${PHP_FPM_INSTALL_INTL}
|
||||
- INSTALL_GHOSTSCRIPT=${PHP_FPM_INSTALL_GHOSTSCRIPT}
|
||||
dockerfile: "Dockerfile-${PHP_VERSION}"
|
||||
volumes_from:
|
||||
- applications
|
||||
- INSTALL_LDAP=${PHP_FPM_INSTALL_LDAP}
|
||||
- INSTALL_SWOOLE=${PHP_FPM_INSTALL_SWOOLE}
|
||||
- INSTALL_IMAGE_OPTIMIZERS=${PHP_FPM_INSTALL_IMAGE_OPTIMIZERS}
|
||||
- INSTALL_IMAGEMAGICK=${PHP_FPM_INSTALL_IMAGEMAGICK}
|
||||
volumes:
|
||||
- ./php-fpm/php${PHP_VERSION}.ini:/usr/local/etc/php/php.ini
|
||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||
expose:
|
||||
- "9000"
|
||||
depends_on:
|
||||
- workspace
|
||||
extra_hosts:
|
||||
- "dockerhost:${DOCKER_HOST_IP}"
|
||||
environment:
|
||||
@@ -86,28 +146,32 @@ services:
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### PHP Worker Container #####################################
|
||||
|
||||
### PHP Worker ############################################
|
||||
php-worker:
|
||||
build:
|
||||
context: ./php-worker
|
||||
volumes_from:
|
||||
- applications
|
||||
context: ./docker/php-worker
|
||||
args:
|
||||
- PHP_VERSION=${PHP_VERSION}
|
||||
- INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL}
|
||||
volumes:
|
||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||
- ./php-worker/supervisord.d:/etc/supervisord.d
|
||||
depends_on:
|
||||
- workspace
|
||||
extra_hosts:
|
||||
- "dockerhost:${DOCKER_HOST_IP}"
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Nginx Server Container ##################################
|
||||
|
||||
### NGINX Server #########################################
|
||||
nginx:
|
||||
build:
|
||||
context: ./nginx
|
||||
context: ./docker/nginx
|
||||
args:
|
||||
- PHP_UPSTREAM=php-fpm
|
||||
volumes_from:
|
||||
- applications
|
||||
- PHP_UPSTREAM_CONTAINER=${NGINX_PHP_UPSTREAM_CONTAINER}
|
||||
- PHP_UPSTREAM_PORT=${NGINX_PHP_UPSTREAM_PORT}
|
||||
volumes:
|
||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||
- ${NGINX_HOST_LOG_PATH}:/var/log/nginx
|
||||
- ${NGINX_SITES_PATH}:/etc/nginx/sites-available
|
||||
ports:
|
||||
@@ -119,8 +183,7 @@ services:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Blackfire Container #################################
|
||||
|
||||
### Blackfire ########################################
|
||||
blackfire:
|
||||
image: blackfire/blackfire
|
||||
environment:
|
||||
@@ -131,18 +194,19 @@ services:
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Apache Server Container #################################
|
||||
|
||||
### Apache Server ########################################
|
||||
apache2:
|
||||
build:
|
||||
context: ./apache2
|
||||
context: ./docker/apache2
|
||||
args:
|
||||
- PHP_SOCKET=${PHP_SOCKET}
|
||||
volumes_from:
|
||||
- applications
|
||||
- PHP_UPSTREAM_CONTAINER=${APACHE_PHP_UPSTREAM_CONTAINER}
|
||||
- PHP_UPSTREAM_PORT=${APACHE_PHP_UPSTREAM_PORT}
|
||||
- PHP_UPSTREAM_TIMEOUT=${APACHE_PHP_UPSTREAM_TIMEOUT}
|
||||
- DOCUMENT_ROOT=${APACHE_DOCUMENT_ROOT}
|
||||
volumes:
|
||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||
- ${APACHE_HOST_LOG_PATH}:/var/log/apache2
|
||||
- ./apache2/sites:/etc/apache2/sites-available
|
||||
- ${APACHE_SITES_PATH}:/etc/apache2/sites-available
|
||||
ports:
|
||||
- "${APACHE_HOST_HTTP_PORT}:80"
|
||||
- "${APACHE_HOST_HTTPS_PORT}:443"
|
||||
@@ -152,12 +216,11 @@ services:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### HHVM Container ##########################################
|
||||
|
||||
### HHVM #################################################
|
||||
hhvm:
|
||||
build: ./hhvm
|
||||
volumes_from:
|
||||
- applications
|
||||
volumes:
|
||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||
expose:
|
||||
- "9000"
|
||||
depends_on:
|
||||
@@ -166,12 +229,12 @@ services:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Minio Container #########################################
|
||||
|
||||
### Minio ################################################
|
||||
minio:
|
||||
build: ./minio
|
||||
volumes:
|
||||
- minio:/export
|
||||
- ${DATA_PATH_HOST}/minio/data:/export
|
||||
- ${DATA_PATH_HOST}/minio/config:/root/.minio
|
||||
ports:
|
||||
- "${MINIO_PORT}:9000"
|
||||
environment:
|
||||
@@ -179,63 +242,66 @@ services:
|
||||
- MINIO_SECRET_KEY=secretkey
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### MySQL Container #########################################
|
||||
|
||||
### MySQL ################################################
|
||||
mysql:
|
||||
build:
|
||||
context: ./mysql
|
||||
context: ./docker/mysql
|
||||
args:
|
||||
- MYSQL_VERSION=${MYSQL_VERSION}
|
||||
environment:
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||
- TZ=${WORKSPACE_TIMEZONE}
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/mysql:/var/lib/mysql
|
||||
- ${DATA_PATH_HOST}/mysql:/var/lib/mysql
|
||||
- ${MYSQL_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
|
||||
ports:
|
||||
- "${MYSQL_PORT}:3306"
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Percona Container #########################################
|
||||
|
||||
### Percona ################################################
|
||||
percona:
|
||||
build:
|
||||
context: ./percona
|
||||
context: ./docker/percona
|
||||
environment:
|
||||
- MYSQL_DATABASE=${PERCONA_DATABASE}
|
||||
- MYSQL_USER=${PERCONA_USER}
|
||||
- MYSQL_PASSWORD=${PERCONA_PASSWORD}
|
||||
- MYSQL_ROOT_PASSWORD=${PERCONA_ROOT_PASSWORD}
|
||||
volumes:
|
||||
- percona:/var/lib/mysql
|
||||
- ${DATA_PATH_HOST}/percona:/var/lib/mysql
|
||||
- ${PERCONA_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
|
||||
ports:
|
||||
- "${PERCONA_PORT}:3306"
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### MSSQL Container #########################################
|
||||
|
||||
### MSSQL ################################################
|
||||
mssql:
|
||||
build:
|
||||
context: ./mssql
|
||||
context: ./docker/mssql
|
||||
environment:
|
||||
- MSSQL_DATABASE=${MSSQL_DATABASE}
|
||||
- SA_PASSWORD=${MSSQL_PASSWORD}
|
||||
- ACCEPT_EULA=Y
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/mssql:/var/opt/mssql
|
||||
- ${DATA_PATH_HOST}/mssql:/var/opt/mssql
|
||||
ports:
|
||||
- "${MSSQL_PORT}:1433"
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### MariaDB Container #######################################
|
||||
|
||||
### MariaDB ##############################################
|
||||
mariadb:
|
||||
build: ./mariadb
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/mariadb:/var/lib/mysql
|
||||
- ${DATA_PATH_HOST}/mariadb:/var/lib/mysql
|
||||
- ${MARIADB_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
|
||||
ports:
|
||||
- "${MARIADB_PORT}:3306"
|
||||
environment:
|
||||
@@ -246,12 +312,11 @@ services:
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### PostgreSQL Container ####################################
|
||||
|
||||
### PostgreSQL ###########################################
|
||||
postgres:
|
||||
build: ./postgres
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/postgres:/var/lib/postgresql/data
|
||||
- ${DATA_PATH_HOST}/postgres:/var/lib/postgresql/data
|
||||
ports:
|
||||
- "${POSTGRES_PORT}:5432"
|
||||
environment:
|
||||
@@ -261,12 +326,11 @@ services:
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### PostgreSQL PostGis Container ############################
|
||||
|
||||
### PostgreSQL PostGis ###################################
|
||||
postgres-postgis:
|
||||
build: ./postgres-postgis
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/postgres:/var/lib/postgresql/data
|
||||
- ${DATA_PATH_HOST}/postgres:/var/lib/postgresql/data
|
||||
ports:
|
||||
- "${POSTGRES_PORT}:5432"
|
||||
environment:
|
||||
@@ -276,8 +340,7 @@ services:
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Neo4j Container #########################################
|
||||
|
||||
### Neo4j ################################################
|
||||
neo4j:
|
||||
build: ./neo4j
|
||||
ports:
|
||||
@@ -286,65 +349,59 @@ services:
|
||||
environment:
|
||||
- NEO4J_AUTH=default:secret
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/neo4j:/var/lib/neo4j/data
|
||||
- ${DATA_PATH_HOST}/neo4j:/var/lib/neo4j/data
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### MongoDB Container #######################################
|
||||
|
||||
### MongoDB ##############################################
|
||||
mongo:
|
||||
build: ./mongo
|
||||
ports:
|
||||
- "27017:27017"
|
||||
- "${MONGODB_PORT}:27017"
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/mongo:/data/db
|
||||
- ${DATA_PATH_HOST}/mongo:/data/db
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### RethinkDB Container #######################################
|
||||
|
||||
### RethinkDB ##############################################
|
||||
rethinkdb:
|
||||
build: ./rethinkdb
|
||||
ports:
|
||||
- "8090:8080"
|
||||
- "${RETHINKDB_PORT}:8080"
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/rethinkdb:/data/rethinkdb_data
|
||||
- ${DATA_PATH_HOST}/rethinkdb:/data/rethinkdb_data
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Redis Container #########################################
|
||||
|
||||
### Redis ################################################
|
||||
redis:
|
||||
build: ./redis
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/redis:/data
|
||||
- ${DATA_PATH_HOST}/redis:/data
|
||||
ports:
|
||||
- "6379:6379"
|
||||
- "${REDIS_PORT}:6379"
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Aerospike c Container ###################################
|
||||
|
||||
### Aerospike ##########################################
|
||||
aerospike:
|
||||
build: ./aerospike
|
||||
volumes_from:
|
||||
- workspace
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/aerospike:/opt/aerospike/data
|
||||
- workspace
|
||||
- ${DATA_PATH_HOST}/aerospike:/opt/aerospike/data
|
||||
ports:
|
||||
- "3000:3000"
|
||||
- "3001:3001"
|
||||
- "3002:3002"
|
||||
- "3003:3003"
|
||||
- "${AEROSPIKE_SERVICE_PORT}:3000"
|
||||
- "${AEROSPIKE_FABRIC_PORT}:3001"
|
||||
- "${AEROSPIKE_HEARTBEAT_PORT}:3002"
|
||||
- "${AEROSPIKE_INFO_PORT}:3003"
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Memcached Container #####################################
|
||||
|
||||
### Memcached ############################################
|
||||
memcached:
|
||||
build: ./memcached
|
||||
volumes:
|
||||
- ${DATA_SAVE_PATH}/memcached:/var/lib/memcached
|
||||
- ${DATA_PATH_HOST}/memcached:/var/lib/memcached
|
||||
ports:
|
||||
- "${MEMCACHED_HOST_PORT}:11211"
|
||||
depends_on:
|
||||
@@ -352,8 +409,7 @@ services:
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Beanstalkd Container ####################################
|
||||
|
||||
### Beanstalkd ###########################################
|
||||
beanstalkd:
|
||||
build: ./beanstalkd
|
||||
ports:
|
||||
@@ -364,8 +420,7 @@ services:
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### RabbitMQ Container ######################################
|
||||
|
||||
### RabbitMQ #############################################
|
||||
rabbitmq:
|
||||
build: ./rabbitmq
|
||||
ports:
|
||||
@@ -381,39 +436,34 @@ services:
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Beanstalkd Console Container ############################
|
||||
|
||||
### Beanstalkd Console ###################################
|
||||
beanstalkd-console:
|
||||
build: ./beanstalkd-console
|
||||
ports:
|
||||
- "2080:2080"
|
||||
- "${BEANSTALKD_CONSOLE_HOST_PORT}:2080"
|
||||
depends_on:
|
||||
- beanstalkd
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Caddy Server Container ##################################
|
||||
|
||||
### Caddy Server #########################################
|
||||
caddy:
|
||||
build: ./caddy
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
- "2015:2015"
|
||||
volumes_from:
|
||||
- applications
|
||||
volumes:
|
||||
- ./caddy/Caddyfile:/etc/Caddyfile
|
||||
- ./logs/caddy:/var/log/caddy
|
||||
- caddy:/root/.caddy
|
||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||
- ${CADDY_CUSTOM_CADDYFILE}:/etc/Caddyfile
|
||||
- ${CADDY_HOST_LOG_PATH}:/var/log/caddy
|
||||
- ${DATA_PATH_HOST}:/root/.caddy
|
||||
ports:
|
||||
- "${CADDY_HOST_HTTP_PORT}:80"
|
||||
- "${CADDY_HOST_HTTPS_PORT}:443"
|
||||
depends_on:
|
||||
- php-fpm
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### phpMyAdmin Container ####################################
|
||||
|
||||
### phpMyAdmin ###########################################
|
||||
phpmyadmin:
|
||||
build: ./phpmyadmin
|
||||
environment:
|
||||
@@ -429,10 +479,12 @@ services:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Adminer Container ####################################
|
||||
|
||||
### Adminer ###########################################
|
||||
adminer:
|
||||
build: ./adminer
|
||||
build:
|
||||
context: ./docker/adminer
|
||||
args:
|
||||
- INSTALL_MSSQL=${ADM_INSTALL_MSSQL}
|
||||
ports:
|
||||
- "${ADM_PORT}:8080"
|
||||
depends_on:
|
||||
@@ -441,25 +493,33 @@ services:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### pgAdmin Container #######################################
|
||||
|
||||
### pgAdmin ##############################################
|
||||
pgadmin:
|
||||
build: ./pgadmin
|
||||
ports:
|
||||
- "5050:5050"
|
||||
volumes:
|
||||
- ${DATA_PATH_HOST}/pgadmin-backup:/var/lib/pgadmin/storage/pgadmin4
|
||||
depends_on:
|
||||
- postgres
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### ElasticSearch Container #################################
|
||||
|
||||
### ElasticSearch ########################################
|
||||
elasticsearch:
|
||||
build: ./elasticsearch
|
||||
volumes:
|
||||
- elasticsearch-data:/usr/share/elasticsearch/data
|
||||
- elasticsearch-plugins:/usr/share/elasticsearch/plugins
|
||||
- elasticsearch:/usr/share/elasticsearch/data
|
||||
environment:
|
||||
- cluster.name=laradock-cluster
|
||||
- bootstrap.memory_lock=true
|
||||
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
|
||||
ulimits:
|
||||
memlock:
|
||||
soft: -1
|
||||
hard: -1
|
||||
ports:
|
||||
- "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
|
||||
- "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
|
||||
@@ -469,22 +529,32 @@ services:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Certbot Container ##################################
|
||||
|
||||
### Kibana ##############################################
|
||||
kibana:
|
||||
build: ./kibana
|
||||
ports:
|
||||
- "${KIBANA_HTTP_PORT}:5601"
|
||||
depends_on:
|
||||
- elasticsearch
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Certbot #########################################
|
||||
certbot:
|
||||
build:
|
||||
context: ./certbot
|
||||
context: ./docker/certbot
|
||||
volumes:
|
||||
- ./data/certbot/certs/:/var/certs
|
||||
- ./certbot/letsencrypt/:/var/www/letsencrypt
|
||||
- ./certbot/letsencrypt/:${APP_CODE_PATH_CONTAINER}/letsencrypt
|
||||
environment:
|
||||
- CN="fake.domain.com"
|
||||
- EMAIL="fake.email@gmail.com"
|
||||
networks:
|
||||
- frontend
|
||||
|
||||
### Mailhog Container #########################################
|
||||
|
||||
### Mailhog ################################################
|
||||
mailhog:
|
||||
build: ./mailhog
|
||||
ports:
|
||||
@@ -492,9 +562,19 @@ services:
|
||||
- "8025:8025"
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Selenium Container ########################################
|
||||
### MailDev ##############################################
|
||||
maildev:
|
||||
build: ./maildev
|
||||
ports:
|
||||
- "${MAILDEV_HTTP_PORT}:80"
|
||||
- "${MAILDEV_SMTP_PORT}:25"
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Selenium ###############################################
|
||||
selenium:
|
||||
build: ./selenium
|
||||
ports:
|
||||
@@ -504,8 +584,7 @@ services:
|
||||
networks:
|
||||
- frontend
|
||||
|
||||
### Varnish Proxy 1 ##########################################
|
||||
|
||||
### Varnish ##########################################
|
||||
proxy:
|
||||
build: ./varnish
|
||||
expose:
|
||||
@@ -523,8 +602,6 @@ services:
|
||||
networks:
|
||||
- frontend
|
||||
|
||||
### Varnish Proxy 2 ##########################################
|
||||
|
||||
proxy2:
|
||||
build: ./varnish
|
||||
expose:
|
||||
@@ -542,9 +619,8 @@ services:
|
||||
networks:
|
||||
- frontend
|
||||
|
||||
### Balancer Haproxy ##########################################
|
||||
|
||||
balancer:
|
||||
### HAProxy ####################################
|
||||
haproxy:
|
||||
build: ./haproxy
|
||||
ports:
|
||||
- "${HAPROXY_HOST_HTTP_PORT}:8085"
|
||||
@@ -566,49 +642,55 @@ services:
|
||||
volumes:
|
||||
- ${JENKINS_HOME}:/var/jenkins_home
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Networks Setup ############################################
|
||||
### Grafana ################################################
|
||||
grafana:
|
||||
build:
|
||||
context: ./docker/grafana
|
||||
volumes:
|
||||
- ${DATA_PATH_HOST}/grafana:/var/lib/grafana
|
||||
ports:
|
||||
- "${GRAFANA_PORT}:3000"
|
||||
networks:
|
||||
- backend
|
||||
|
||||
networks:
|
||||
frontend:
|
||||
driver: "bridge"
|
||||
backend:
|
||||
driver: "bridge"
|
||||
### Laravel Echo Server #######################################
|
||||
laravel-echo-server:
|
||||
build:
|
||||
context: ./docker/laravel-echo-server
|
||||
volumes:
|
||||
- ./laravel-echo-server/laravel-echo-server.json:/app/laravel-echo-server.json:ro
|
||||
ports:
|
||||
- "${LARAVEL_ECHO_SERVER_PORT}:6001"
|
||||
links:
|
||||
- redis
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
|
||||
### Solr ################################################
|
||||
solr:
|
||||
build:
|
||||
context: ./docker/solr
|
||||
args:
|
||||
- SOLR_VERSION=${SOLR_VERSION}
|
||||
- SOLR_DATAIMPORTHANDLER_MYSQL=${SOLR_DATAIMPORTHANDLER_MYSQL}
|
||||
volumes:
|
||||
- ${DATA_PATH_HOST}/solr:/opt/solr/server/solr/mycores
|
||||
ports:
|
||||
- "${SOLR_PORT}:8983"
|
||||
networks:
|
||||
- backend
|
||||
|
||||
### Volumes Setup #############################################
|
||||
|
||||
volumes:
|
||||
mysql:
|
||||
driver: "local"
|
||||
percona:
|
||||
driver: "local"
|
||||
mssql:
|
||||
driver: "local"
|
||||
postgres:
|
||||
driver: "local"
|
||||
memcached:
|
||||
driver: "local"
|
||||
redis:
|
||||
driver: "local"
|
||||
neo4j:
|
||||
driver: "local"
|
||||
mariadb:
|
||||
driver: "local"
|
||||
mongo:
|
||||
driver: "local"
|
||||
minio:
|
||||
driver: "local"
|
||||
rethinkdb:
|
||||
driver: "local"
|
||||
phpmyadmin:
|
||||
driver: "local"
|
||||
adminer:
|
||||
driver: "local"
|
||||
aerospike:
|
||||
driver: "local"
|
||||
caddy:
|
||||
driver: "local"
|
||||
elasticsearch-data:
|
||||
driver: "local"
|
||||
elasticsearch-plugins:
|
||||
driver: "local"
|
||||
### AWS EB-CLI ################################################
|
||||
aws:
|
||||
build:
|
||||
context: ./docker/aws
|
||||
volumes:
|
||||
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}
|
||||
depends_on:
|
||||
- workspace
|
||||
tty: true
|
||||
|
||||
20
docker-remove.sh
Executable file
20
docker-remove.sh
Executable file
@@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
##### WARNING !!! ###########################
|
||||
# YOU HAVE ALREADY KNOW WHAT YOU'RE DOING ! #
|
||||
# ------------------------------------------- #
|
||||
# This will remove all your docker container #
|
||||
# without mercy ! #
|
||||
# ------------------------------------------- #
|
||||
|
||||
##### Remove all docker "laradock" #####
|
||||
sudo docker ps -a | grep "laradock" | awk '{print $2}' | xargs sudo docker rmi -f
|
||||
|
||||
##### Remove all docker container #####
|
||||
# WARNING! This will remove:
|
||||
# - all stopped containers
|
||||
# - all volumes not used by at least one container
|
||||
# - all networks not used by at least one container
|
||||
# - all images without at least one container associated to them
|
||||
|
||||
# sudo docker system prune -a
|
||||
13
docker-sync.yml
Normal file
13
docker-sync.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
version: "3.2"
|
||||
|
||||
options:
|
||||
verbose: false
|
||||
syncs:
|
||||
applications-docker-sync: # name of the intermediary sync volume
|
||||
compose-dev-file-path: 'docker-compose.sync.yml' # docker-compose override file
|
||||
|
||||
src: '${APPLICATION}' # host source directory
|
||||
sync_userid: 1000 # giving permissions to www-data user (as defined in nginx and php-fpm Dockerfiles)
|
||||
sync_strategy: '${DOCKER_SYNC_STRATEGY}' # for osx use 'native_osx', for windows use 'unison'
|
||||
|
||||
sync_excludes: ['laradock', 'ignored_folder_example'] # ignored directories
|
||||
29
docker/adminer/Dockerfile
Normal file
29
docker/adminer/Dockerfile
Normal file
@@ -0,0 +1,29 @@
|
||||
FROM adminer:4.3.0
|
||||
|
||||
# Version 4.3.1 contains PostgreSQL login errors. See docs.
|
||||
# See https://sourceforge.net/p/adminer/bugs-and-features/548/
|
||||
|
||||
LABEL maintainer="Patrick Artounian <partounian@gmail.com>"
|
||||
|
||||
# Add volume for sessions to allow session persistence
|
||||
VOLUME /sessions
|
||||
|
||||
#####################################
|
||||
# SQL SERVER:
|
||||
#####################################
|
||||
USER root
|
||||
ARG INSTALL_MSSQL=false
|
||||
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
|
||||
RUN if [ ${INSTALL_MSSQL} = true ]; then \
|
||||
set -xe \
|
||||
&& apk --update add --no-cache --virtual .phpize-deps $PHPIZE_DEPS unixodbc unixodbc-dev \
|
||||
&& pecl channel-update pecl.php.net \
|
||||
&& pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \
|
||||
&& echo "extension=sqlsrv.so" > /usr/local/etc/php/conf.d/20-sqlsrv.ini \
|
||||
&& echo "extension=pdo_sqlsrv.so" > /usr/local/etc/php/conf.d/20-pdo_sqlsrv.ini \
|
||||
;fi
|
||||
|
||||
USER adminer
|
||||
|
||||
# We expose Adminer on port 8080 (Adminer's default)
|
||||
EXPOSE 8080
|
||||
7
docker/aerospike/Dockerfile
Normal file
7
docker/aerospike/Dockerfile
Normal file
@@ -0,0 +1,7 @@
|
||||
FROM aerospike:latest
|
||||
|
||||
LABEL maintainer="Luciano Jr <luciano@lucianojr.com.br>"
|
||||
|
||||
RUN rm /etc/aerospike/aerospike.conf
|
||||
|
||||
COPY aerospike.conf /etc/aerospike/aerospike.conf
|
||||
77
docker/aerospike/aerospike.conf
Normal file
77
docker/aerospike/aerospike.conf
Normal file
@@ -0,0 +1,77 @@
|
||||
# Aerospike database configuration file.
|
||||
|
||||
# This stanza must come first.
|
||||
service {
|
||||
user root
|
||||
group root
|
||||
paxos-single-replica-limit 1 # Number of nodes where the replica count is automatically reduced to 1.
|
||||
pidfile /var/run/aerospike/asd.pid
|
||||
service-threads 4
|
||||
transaction-queues 4
|
||||
transaction-threads-per-queue 4
|
||||
proto-fd-max 15000
|
||||
}
|
||||
|
||||
logging {
|
||||
|
||||
# Log file must be an absolute path.
|
||||
file /var/log/aerospike/aerospike.log {
|
||||
context any info
|
||||
}
|
||||
|
||||
# Send log messages to stdout
|
||||
console {
|
||||
context any critical
|
||||
}
|
||||
}
|
||||
|
||||
network {
|
||||
service {
|
||||
address any
|
||||
port 3000
|
||||
|
||||
# Uncomment the following to set the `access-address` parameter to the
|
||||
# IP address of the Docker host. This will the allow the server to correctly
|
||||
# publish the address which applications and other nodes in the cluster to
|
||||
# use when addressing this node.
|
||||
# access-address <IPADDR>
|
||||
}
|
||||
|
||||
heartbeat {
|
||||
|
||||
# mesh is used for environments that do not support multicast
|
||||
mode mesh
|
||||
port 3002
|
||||
|
||||
# use asinfo -v 'tip:host=<ADDR>;port=3002' to inform cluster of
|
||||
# other mesh nodes
|
||||
mesh-port 3002
|
||||
|
||||
interval 150
|
||||
timeout 10
|
||||
}
|
||||
|
||||
fabric {
|
||||
port 3001
|
||||
}
|
||||
|
||||
info {
|
||||
port 3003
|
||||
}
|
||||
}
|
||||
|
||||
namespace test {
|
||||
replication-factor 2
|
||||
memory-size 1G
|
||||
default-ttl 5d # 5 days, use 0 to never expire/evict.
|
||||
|
||||
# storage-engine memory
|
||||
|
||||
# To use file storage backing, comment out the line above and use the
|
||||
# following lines instead.
|
||||
storage-engine device {
|
||||
file /opt/aerospike/data/test.dat
|
||||
filesize 4G
|
||||
data-in-memory true # Store data in memory in addition to file.
|
||||
}
|
||||
}
|
||||
24
docker/apache2/Dockerfile
Normal file
24
docker/apache2/Dockerfile
Normal file
@@ -0,0 +1,24 @@
|
||||
FROM webdevops/apache:ubuntu-16.04
|
||||
|
||||
LABEL maintainer="Eric Pfeiffer <computerfr33k@users.noreply.github.com>"
|
||||
|
||||
ARG PHP_UPSTREAM_CONTAINER=php-fpm
|
||||
ARG PHP_UPSTREAM_PORT=9000
|
||||
ARG PHP_UPSTREAM_TIMEOUT=60
|
||||
ARG DOCUMENT_ROOT=/var/www/
|
||||
|
||||
ENV WEB_PHP_SOCKET=${PHP_UPSTREAM_CONTAINER}:${PHP_UPSTREAM_PORT}
|
||||
|
||||
ENV WEB_DOCUMENT_ROOT=${DOCUMENT_ROOT}
|
||||
|
||||
ENV WEB_PHP_TIMEOUT=${PHP_UPSTREAM_TIMEOUT}
|
||||
|
||||
EXPOSE 80 443
|
||||
|
||||
WORKDIR /var/www/
|
||||
|
||||
COPY vhost.conf /etc/apache2/sites-enabled/vhost.conf
|
||||
|
||||
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
|
||||
|
||||
CMD ["supervisord"]
|
||||
@@ -1,9 +1,9 @@
|
||||
<VirtualHost *:80>
|
||||
ServerName laradock.dev
|
||||
DocumentRoot /var/www/public/
|
||||
ServerName laradock.test
|
||||
DocumentRoot /var/www/
|
||||
Options Indexes FollowSymLinks
|
||||
|
||||
<Directory "/var/www/public/">
|
||||
<Directory "/var/www/">
|
||||
AllowOverride All
|
||||
<IfVersion < 2.4>
|
||||
Allow from all
|
||||
@@ -1,5 +1,5 @@
|
||||
<VirtualHost *:80>
|
||||
ServerName sample.dev
|
||||
ServerName sample.test
|
||||
DocumentRoot /var/www/sample/public/
|
||||
Options Indexes FollowSymLinks
|
||||
|
||||
1
docker/aws/.gitignore
vendored
Normal file
1
docker/aws/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
./ssh_keys
|
||||
17
docker/aws/Dockerfile
Normal file
17
docker/aws/Dockerfile
Normal file
@@ -0,0 +1,17 @@
|
||||
FROM python:slim
|
||||
|
||||
LABEL maintainer="melchabcede@gmail.com"
|
||||
|
||||
RUN pip install --upgrade --no-cache-dir awsebcli
|
||||
RUN apt-get -yqq update && apt-get -yqq install git-all
|
||||
|
||||
#NOTE: make sure ssh keys are added to ssh_keys folder
|
||||
|
||||
RUN mkdir root/tmp_ssh
|
||||
COPY /ssh_keys/. /root/.ssh/
|
||||
RUN cd /root/.ssh && chmod 600 * && chmod 644 *.pub
|
||||
|
||||
# Set default work directory
|
||||
WORKDIR /var/www
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
FROM php:latest
|
||||
|
||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||
|
||||
RUN apt-get update && apt-get install -y curl
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
FROM phusion/baseimage:latest
|
||||
|
||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
ENV PATH /usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
||||
@@ -13,4 +13,4 @@ VOLUME /var/lib/beanstalkd/data
|
||||
|
||||
EXPOSE 11300
|
||||
|
||||
CMD ["/usr/bin/beanstalkd"]
|
||||
CMD ["/usr/bin/beanstalkd"]
|
||||
46
docker/caddy/Caddyfile
Normal file
46
docker/caddy/Caddyfile
Normal file
@@ -0,0 +1,46 @@
|
||||
# Docs: https://caddyserver.com/docs/caddyfile
|
||||
0.0.0.0:80 {
|
||||
root /var/www/public
|
||||
fastcgi / php-fpm:9000 php {
|
||||
index index.php
|
||||
}
|
||||
|
||||
# To handle .html extensions with laravel change ext to
|
||||
# ext / .html
|
||||
|
||||
rewrite {
|
||||
to {path} {path}/ /index.php?{query}
|
||||
}
|
||||
gzip
|
||||
browse
|
||||
log /var/log/caddy/access.log
|
||||
errors /var/log/caddy/error.log
|
||||
# Uncomment to enable TLS (HTTPS)
|
||||
# Change the first list to listen on port 443 when enabling TLS
|
||||
#tls self_signed
|
||||
|
||||
# To use Lets encrpt tls with a DNS provider uncomment these
|
||||
# lines and change the provider as required
|
||||
#tls {
|
||||
# dns cloudflare
|
||||
#}
|
||||
}
|
||||
|
||||
laradock1.demo:80 {
|
||||
root /var/www/public
|
||||
# Create a Webhook in git.
|
||||
#git {
|
||||
#repo https://github.com/xxx/xxx
|
||||
# path /home/xxx
|
||||
# #interval 60
|
||||
# hook webhook laradock
|
||||
# hook_type generic
|
||||
#}
|
||||
|
||||
}
|
||||
|
||||
laradock2.demo:80 {
|
||||
# Create a Proxy and cors.
|
||||
#proxy domain.com
|
||||
#cors
|
||||
}
|
||||
17
docker/caddy/Dockerfile
Normal file
17
docker/caddy/Dockerfile
Normal file
@@ -0,0 +1,17 @@
|
||||
FROM zuohuadong/caddy:alpine
|
||||
|
||||
LABEL maintainer="Huadong Zuo <admin@zuohuadong.cn>"
|
||||
|
||||
ARG plugins="cors"
|
||||
|
||||
## ARG plugins="cors cgi cloudflare azure linode"
|
||||
|
||||
|
||||
RUN caddyplug install ${plugins}
|
||||
|
||||
|
||||
EXPOSE 80 443 2015
|
||||
|
||||
WORKDIR /var/www/public
|
||||
|
||||
CMD ["/usr/bin/caddy", "-conf", "/etc/Caddyfile"]
|
||||
@@ -1,6 +1,6 @@
|
||||
FROM phusion/baseimage:latest
|
||||
|
||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||
LABEL maintainer="Mahmoud Zalt <mahmoud@zalt.me>"
|
||||
|
||||
COPY run-certbot.sh /root/certbot/run-certbot.sh
|
||||
|
||||
0
docker/certbot/letsencrypt/.gitkeep
Normal file
0
docker/certbot/letsencrypt/.gitkeep
Normal file
0
docker/certbot/letsencrypt/.well-known/.gitkeep
Normal file
0
docker/certbot/letsencrypt/.well-known/.gitkeep
Normal file
3
docker/core-base-consul/.dockerignore
Normal file
3
docker/core-base-consul/.dockerignore
Normal file
@@ -0,0 +1,3 @@
|
||||
rootfs/etc/consul-template/conf-services.d/.gitkeep
|
||||
rootfs/etc/cont-consul/services.d/.gitkeep
|
||||
rootfs/etc/cont-consul/checks.d/.gitkeep
|
||||
40
docker/core-base-consul/Dockerfile
Normal file
40
docker/core-base-consul/Dockerfile
Normal file
@@ -0,0 +1,40 @@
|
||||
FROM dockerframework/core-base:latest
|
||||
|
||||
# ================================================================================================
|
||||
# Inspiration: Docker Alpine (https://github.com/bhuisgen/docker-alpine)
|
||||
# Boris HUISGEN <bhuisgen@hbis.fr>
|
||||
# ================================================================================================
|
||||
# Core Contributors:
|
||||
# - Mahmoud Zalt @mahmoudz
|
||||
# - Bo-Yi Wu @appleboy
|
||||
# - Philippe Trépanier @philtrep
|
||||
# - Mike Erickson @mikeerickson
|
||||
# - Dwi Fahni Denni @zeroc0d3
|
||||
# - Thor Erik @thorerik
|
||||
# - Winfried van Loon @winfried-van-loon
|
||||
# - TJ Miller @sixlive
|
||||
# - Yu-Lung Shao (Allen) @bestlong
|
||||
# - Milan Urukalo @urukalo
|
||||
# - Vince Chu @vwchu
|
||||
# - Huadong Zuo @zuohuadong
|
||||
# ================================================================================================
|
||||
|
||||
MAINTAINER "Laradock Team <mahmoud@zalt.me>"
|
||||
|
||||
ENV CONSULTEMPLATE_VERSION=0.19.4
|
||||
|
||||
RUN mkdir -p /var/lib/consul && \
|
||||
addgroup -g 500 -S consul && \
|
||||
adduser -u 500 -S -D -g "" -G consul -s /sbin/nologin -h /var/lib/consul consul && \
|
||||
chown -R consul:consul /var/lib/consul
|
||||
|
||||
RUN apk add --update zip && \
|
||||
curl -sSL https://releases.hashicorp.com/consul-template/${CONSULTEMPLATE_VERSION}/consul-template_${CONSULTEMPLATE_VERSION}_linux_amd64.zip -o /tmp/consul-template.zip && \
|
||||
unzip /tmp/consul-template.zip -d /bin && \
|
||||
rm /tmp/consul-template.zip && \
|
||||
apk del zip && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
COPY rootfs/ /
|
||||
|
||||
HEALTHCHECK CMD /etc/cont-consul/check || exit 1
|
||||
21
docker/core-base-consul/LICENSE
Normal file
21
docker/core-base-consul/LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2018 Docker Framework
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
13
docker/core-base-consul/Makefile.am
Normal file
13
docker/core-base-consul/Makefile.am
Normal file
@@ -0,0 +1,13 @@
|
||||
IMAGE = dockerframework/core-base-consul
|
||||
|
||||
clean-local:
|
||||
docker rmi $(CLEAN_OPTIONS) $(IMAGE):$(TAG) || true
|
||||
|
||||
build:
|
||||
docker build $(BUILD_OPTIONS) -t $(IMAGE):$(TAG) .
|
||||
|
||||
pull:
|
||||
docker pull $(PULL_OPTIONS) $(IMAGE):$(TAG)
|
||||
|
||||
push: build
|
||||
docker push $(PUSH_OPTIONS) $(IMAGE):$(TAG)
|
||||
412
docker/core-base-consul/Makefile.in
Normal file
412
docker/core-base-consul/Makefile.in
Normal file
@@ -0,0 +1,412 @@
|
||||
# Makefile.in generated by automake 1.15.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2017 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
VPATH = @srcdir@
|
||||
am__is_gnu_make = { \
|
||||
if test -z '$(MAKELEVEL)'; then \
|
||||
false; \
|
||||
elif test -n '$(MAKE_HOST)'; then \
|
||||
true; \
|
||||
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
|
||||
true; \
|
||||
else \
|
||||
false; \
|
||||
fi; \
|
||||
}
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
subdir = core-base-consul
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_@AM_V@)
|
||||
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__extra_recursive_targets = build-recursive pull-recursive \
|
||||
push-recursive
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
am__DIST_COMMON = $(srcdir)/Makefile.in
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BUILD_OPTIONS = @BUILD_OPTIONS@
|
||||
CLEAN_OPTIONS = @CLEAN_OPTIONS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DOCKER = @DOCKER@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PULL_OPTIONS = @PULL_OPTIONS@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
TAG = @TAG@
|
||||
VERSION = @VERSION@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build_alias = @build_alias@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host_alias = @host_alias@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
runstatedir = @runstatedir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
IMAGE = dockerframework/core-base-consul
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign core-base-consul/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign core-base-consul/Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
build-local:
|
||||
pull-local:
|
||||
push-local:
|
||||
tags TAGS:
|
||||
|
||||
ctags CTAGS:
|
||||
|
||||
cscope cscopelist:
|
||||
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||
else \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile
|
||||
installdirs:
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
build-am: build-local
|
||||
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-local mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-generic
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
pull-am: pull-local
|
||||
|
||||
push-am: push-local
|
||||
|
||||
uninstall-am:
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: all all-am build build-am build-local check check-am clean \
|
||||
clean-generic clean-local cscopelist-am ctags-am distclean \
|
||||
distclean-generic distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-pdf install-pdf-am install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-generic pdf pdf-am ps ps-am pull pull-am \
|
||||
pull-local push push-am push-local tags-am uninstall \
|
||||
uninstall-am
|
||||
|
||||
.PRECIOUS: Makefile
|
||||
|
||||
|
||||
clean-local:
|
||||
docker rmi $(CLEAN_OPTIONS) $(IMAGE):$(TAG) || true
|
||||
|
||||
build:
|
||||
docker build $(BUILD_OPTIONS) -t $(IMAGE):$(TAG) .
|
||||
|
||||
pull:
|
||||
docker pull $(PULL_OPTIONS) $(IMAGE):$(TAG)
|
||||
|
||||
push: build
|
||||
docker push $(PUSH_OPTIONS) $(IMAGE):$(TAG)
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
4
docker/core-base-consul/README.md
Normal file
4
docker/core-base-consul/README.md
Normal file
@@ -0,0 +1,4 @@
|
||||
# Core-Base-Consul Container
|
||||
Core-Base-Consul Container of Docker Framework
|
||||
|
||||
[](https://travis-ci.org/dockerframework/core-base-consul) [](https://microbadger.com/images/dockerframework/core-base-consul:latest "Layers") [](https://microbadger.com/images/dockerframework/core-base-consul:latest "Version") [](https://github.com/dockerframework/core-base-consul/issues) [](https://github.com/dockerframework/core-base-consul/network) [](https://github.com/dockerframework/core-base-consul/stargazers) [](https://raw.githubusercontent.com/dockerframework/core-base-consul/master/LICENSE)
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user