Compare commits
1366 Commits
Author | SHA1 | Date | |
---|---|---|---|
fb617deb86 | |||
5a25b786f3 | |||
88d06bb838 | |||
bc6ba25790 | |||
3889363443 | |||
42c580af1f | |||
a954732145 | |||
f608c6a45d | |||
53558480e8 | |||
76b046f321 | |||
818d61ab54 | |||
c6fe34db11 | |||
dec428a748 | |||
9cea74dc6f | |||
a190f11e8f | |||
f3e3bbe2b7 | |||
91041e9c56 | |||
84db9b079d | |||
64573a407f | |||
ed6be69cc1 | |||
838156b1bd | |||
9bdeaa3682 | |||
c84db7d4d7 | |||
a7faceba37 | |||
f27c186b93 | |||
2c9563d2cd | |||
dab5ff1ac6 | |||
5a0c905457 | |||
b6204e5933 | |||
ba23f41322 | |||
4b0f58f1b2 | |||
b753c0580e | |||
8474acdf17 | |||
4afc747bf5 | |||
0a4e832371 | |||
e53632404f | |||
2d27fc36e8 | |||
9e5ff1888e | |||
8f53cea9f7 | |||
5026effcac | |||
351f19b8fe | |||
abdcfa1002 | |||
f5f1f45858 | |||
497878557c | |||
272222b7f1 | |||
919cfc0c87 | |||
fe2631649c | |||
c64be9969f | |||
24361ca818 | |||
b5314e5769 | |||
50b6272fff | |||
461e05d677 | |||
aff7d9d615 | |||
440002f0fc | |||
d3e505cd73 | |||
07c019b672 | |||
c3620e95c8 | |||
4e5a142c9d | |||
c6ad0a1a2d | |||
d4e65a40ff | |||
8aeb64ea37 | |||
3cdc771abd | |||
10c28a14fa | |||
402ea8747a | |||
7ad82a3cd1 | |||
83ba1447d4 | |||
41438e9c31 | |||
8b2bcc6d15 | |||
51d821b35f | |||
75acb9f8a5 | |||
c09261e99e | |||
b34b052c64 | |||
18237b467b | |||
b08385b03e | |||
7247d8f7ce | |||
f5c00c61be | |||
d82734744e | |||
ef9eee2def | |||
1673c44136 | |||
6764a88fe6 | |||
4dc4a4e680 | |||
52bd45e1b8 | |||
3cb43e6139 | |||
b7b468765a | |||
04c6aaf338 | |||
4af8ac8f53 | |||
25f883fc99 | |||
8755e445d9 | |||
153e65d6a7 | |||
9428a4b781 | |||
747cfaf583 | |||
dfb0f731f5 | |||
54a29b178a | |||
42af0d8d2c | |||
8f6fa0e868 | |||
d4240ce211 | |||
41e9f4a78f | |||
4dcef17515 | |||
902e041f7b | |||
3f9b888139 | |||
67c5a6a552 | |||
6139805561 | |||
237e39b40d | |||
b7ede26634 | |||
861ea6b16e | |||
e2ddee524d | |||
1e668764fd | |||
5dbd46f9ff | |||
df15420be0 | |||
e852d203ab | |||
eadecf1f1e | |||
308f813e45 | |||
9acb18aee1 | |||
2d444e094c | |||
e608528da5 | |||
4e306a6be0 | |||
ed92e61818 | |||
ae64a619b7 | |||
cb910c590e | |||
5e4fda4659 | |||
818eb1f59d | |||
fa1f33bc51 | |||
493fc1a010 | |||
ab3a325ea3 | |||
b8a971e634 | |||
4893347980 | |||
f01cab7742 | |||
f64adc2114 | |||
da8f0d0864 | |||
8254c34647 | |||
2e928a4928 | |||
51c6d3549c | |||
58d1eb876e | |||
044261b06f | |||
196f145ff5 | |||
1602ff2dd0 | |||
4cb6ffc766 | |||
99ceef7b45 | |||
9a852e7bc7 | |||
768f14b6dd | |||
a2e997ab2a | |||
c604de0af0 | |||
440d865fc4 | |||
63a5c45bf8 | |||
3a4c9158d2 | |||
69aa0b2b6a | |||
db1a7cdbbc | |||
26184055c5 | |||
c79d0671e2 | |||
4814490e2a | |||
4e257c8e8f | |||
01eb934863 | |||
ce00c5ea27 | |||
6eaf587803 | |||
60afd8feb3 | |||
8ae02d5d96 | |||
6003de2754 | |||
9df9a90b12 | |||
cd8dc6cc22 | |||
f73a66da13 | |||
9a0f9cfa74 | |||
e9eacfafa7 | |||
a2c7b46766 | |||
ca80dd1694 | |||
d1015e5e96 | |||
63fc1fde44 | |||
623ff66f40 | |||
5bf8be6303 | |||
c0a36a5a4d | |||
c0b28fc404 | |||
9e537ee16b | |||
fbae49b898 | |||
bc8772441b | |||
dba1594b05 | |||
2dd64aef55 | |||
f23149115d | |||
8027a98f72 | |||
23193babf4 | |||
fbdfc41927 | |||
7ea44ca25a | |||
76b71d264d | |||
c7289f7db3 | |||
e8d84cf9a3 | |||
4417083a80 | |||
0980523049 | |||
d8b3cb5a52 | |||
d34602ae29 | |||
cbbdb0a86b | |||
f5c80cd251 | |||
5b07fbb9c4 | |||
83a24efa70 | |||
a03c225e27 | |||
95965b12e7 | |||
58d7d4fa0b | |||
1f22e86d92 | |||
c8b526be13 | |||
b1cbd48221 | |||
d1f3bc8e5c | |||
9920397463 | |||
6f4664c579 | |||
254a9ae194 | |||
8ca26e6c06 | |||
6c8adbc195 | |||
329462a637 | |||
e105ec9569 | |||
76218808fd | |||
f18eb9728b | |||
d404555cf5 | |||
d964e2898c | |||
2d7b780e56 | |||
cf6a9ba2c9 | |||
8f6923531f | |||
61d7b18922 | |||
cde20c3ced | |||
f7dff0f72f | |||
1ec9244f7f | |||
176d4e8033 | |||
2deb9bf1cb | |||
b0edaf93a1 | |||
27af2bca8c | |||
61ac73e806 | |||
14ee775e39 | |||
1282c413fd | |||
ee2db98c61 | |||
739e8d3448 | |||
1286b7ef06 | |||
e0d7229e95 | |||
931f99ed0f | |||
fc3355a9cc | |||
53ca88714c | |||
1d420a2507 | |||
c7aa535598 | |||
5edf3f398b | |||
f6c5aa1801 | |||
a09144f02b | |||
9e4dfa2a0c | |||
99f7e65c99 | |||
e0dc683d3f | |||
eb0c941313 | |||
d27f4368ee | |||
7430a34dd5 | |||
d5647295ca | |||
b1e346383b | |||
3ad37405c6 | |||
913abc54f9 | |||
53e8229313 | |||
36c78369d5 | |||
acac6eb229 | |||
04f071555c | |||
03ff791e17 | |||
7c4f6dd7a9 | |||
f44a8e0ca0 | |||
ce7a29c662 | |||
bbff18c631 | |||
e07c128063 | |||
163eb1f73a | |||
30c8afafa2 | |||
3e771dbcfc | |||
a1bda23cd9 | |||
e6d866b8a6 | |||
35ffd02b44 | |||
d03ead34a2 | |||
28e82813c4 | |||
2de32fe97f | |||
ee89ff96d5 | |||
d8c36ab860 | |||
2689638d7d | |||
fa7d3c239c | |||
22032974c9 | |||
4480962922 | |||
cc81e57206 | |||
5c41a4f3e9 | |||
796b46cf5a | |||
d7765a7b10 | |||
156d124db0 | |||
afdf2661bd | |||
a1af01b137 | |||
1519c80036 | |||
441146b325 | |||
0ed5487ed7 | |||
ca9d244396 | |||
cf46b87a01 | |||
0af2115658 | |||
c1e8e955a1 | |||
0ffea858d6 | |||
549094d7d2 | |||
7219b3543a | |||
1dac382827 | |||
876336bc1a | |||
538b6aa0cd | |||
c886831613 | |||
9cfe5c6156 | |||
db02fe7570 | |||
436df887c9 | |||
919cde3a76 | |||
784aab2043 | |||
d5d9073863 | |||
6a3b3fac2d | |||
61576c0b1b | |||
70c1be4168 | |||
e101e4d5b2 | |||
4658820437 | |||
0bbfb2d228 | |||
86a4108ef4 | |||
20c85904c5 | |||
aaef73c84d | |||
876935452e | |||
00df369e96 | |||
902198ab05 | |||
2e2cb6df22 | |||
39469e1404 | |||
947a791ad2 | |||
aa84dd8616 | |||
b788a8bbfd | |||
89051de67d | |||
1b865dd153 | |||
8180804ae0 | |||
303dadf33d | |||
764e484599 | |||
e92f08e323 | |||
1acbebc2a3 | |||
b2ab970d04 | |||
679d2b0aba | |||
fbc2afee71 | |||
1962327de1 | |||
d8b2b8c233 | |||
0f65c60a89 | |||
8624335f61 | |||
7ef36daaba | |||
4ce25e95b4 | |||
20b0181b6d | |||
dc234b9b28 | |||
29483bab8c | |||
85c57a0b6f | |||
2f996450e5 | |||
1823060c4b | |||
6fa2b75bb7 | |||
2ec23122e7 | |||
a1e01ac19b | |||
eccc149f45 | |||
9cb7624da7 | |||
cd1c56c1e2 | |||
9d42ea6b9d | |||
b0bfa5f1d3 | |||
dcf6b6d9ac | |||
1d9cbd7c75 | |||
fd56c4dcda | |||
0351cf531b | |||
09e998b723 | |||
06d0105514 | |||
0cbc51bf72 | |||
08dfc9f816 | |||
b71f50bf83 | |||
7d1dc66f77 | |||
f3c934222f | |||
a90865d67c | |||
a0a5c85a54 | |||
a807caa30a | |||
bc27e96337 | |||
11912055ec | |||
3509473b89 | |||
5521f71428 | |||
339d47f303 | |||
600a6154b4 | |||
4673ba7b31 | |||
154249a08f | |||
5bffd43b55 | |||
0e9d044c6f | |||
21d203da73 | |||
a3cbfd71f5 | |||
33234fd3b5 | |||
f47e40b262 | |||
7199ae5a34 | |||
6caa4c5fb9 | |||
3fceba0709 | |||
75b3fa499e | |||
999118b674 | |||
4b2c440146 | |||
a4d3f9bd77 | |||
65444d39b6 | |||
5016e88515 | |||
e8eb97b398 | |||
66c61d9a72 | |||
d8f95bac2a | |||
ad316bab50 | |||
6e43dd804d | |||
ba1a83b40b | |||
34ad8acdbf | |||
d5ea58eb6e | |||
567756475d | |||
ad21cd225f | |||
f2f5aeabd6 | |||
0f4a417f4e | |||
42a960338b | |||
2e75c25c7f | |||
beec32498e | |||
573b8e0afd | |||
409f91662f | |||
185ba60a09 | |||
a03ce23bf5 | |||
fc8736773c | |||
d5efd5309e | |||
da3a7226bd | |||
cc20ac2421 | |||
402383e7b7 | |||
9250326664 | |||
51d253db21 | |||
69de0668e9 | |||
472df4d194 | |||
62b716f469 | |||
10ba847415 | |||
a0595491a2 | |||
7c88c33b29 | |||
808bd72d13 | |||
07410e80cf | |||
d1170f51c8 | |||
8158b6f50e | |||
97adef735a | |||
6e6284d00f | |||
890faa2f3c | |||
f6f37ec020 | |||
20464d1bd2 | |||
a5813de5bf | |||
aee1adb0a1 | |||
dd322a0e71 | |||
99c2c846ff | |||
d08177d2c2 | |||
b990af3353 | |||
b2c09f6b15 | |||
9e5fdda294 | |||
77bea30cb0 | |||
dac336e6a1 | |||
d142500216 | |||
ad1509dd62 | |||
9ab84c5174 | |||
6b6e2d5f86 | |||
3ad17eca0a | |||
f54e6baf02 | |||
59f3b574da | |||
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 | |||
545d50105c | |||
61d3874736 | |||
03c7611010 | |||
48de39b1a1 | |||
2ca9d3c5c6 | |||
3b219d2974 | |||
e77480b69f | |||
b7f89e6b00 | |||
acbe7160d9 | |||
f53565f2a6 | |||
dfff0b2fa0 | |||
82a2681eed | |||
e792aa654e | |||
87e1bdeb92 | |||
f05fdc71d5 | |||
6e96b1c6f9 | |||
fad7c11d53 | |||
639b14445f | |||
2a74f1433c | |||
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 | |||
47150da482 | |||
1e6ee4a7b5 | |||
1be9df7d61 | |||
8246863cd7 | |||
5291f0f884 | |||
d44873085b | |||
956b9209bf | |||
080fffba3d | |||
fd47c89736 | |||
ae72b00e29 | |||
74ba0ef0a8 | |||
db353fbbdc | |||
f6f89fca61 | |||
c979878288 | |||
68ef6235c1 | |||
a94b4e259c | |||
988750e737 | |||
c7a726cd59 | |||
6348d032c9 | |||
6bf9ac877b | |||
dde95043f8 | |||
4bf0df8ee1 | |||
1db18b1cec | |||
c6bd305b13 | |||
49f245b37a | |||
ef6071bff0 | |||
690137a349 | |||
24d70ad1e3 | |||
1310d633fc | |||
bccb1a3162 | |||
0cf26af724 | |||
00ba765d80 | |||
481ac821de | |||
613eb1e51d | |||
4d1aee0fbe | |||
79101cd8fe | |||
eefd04dbfc | |||
a657dce572 | |||
c1a2f4b2a8 | |||
0b11b874d2 | |||
80991483bc | |||
b1c546efc9 | |||
f714954033 | |||
7614b1f626 | |||
a44cae4408 | |||
bdc6ea851f | |||
a5adf85e2d | |||
7f540ed7e2 | |||
0f7b6bab6b | |||
39f0eaf328 | |||
e92286c381 | |||
e022e7163f | |||
5c95bb3a0f | |||
bce05e4b59 | |||
4ce1d7f64a | |||
d0effd9468 | |||
5aab3add44 | |||
2a7c11a6bf | |||
1a0f978625 | |||
3a2845a00d | |||
fef6ec86b3 | |||
c5105c29b6 | |||
4dda815980 | |||
a6ff3d0666 | |||
0549936547 | |||
407353e6eb | |||
a7624a7034 | |||
f30e36bc93 | |||
b9716e7fef | |||
cc520c18b5 | |||
c67fa5b258 | |||
3d6b6ba271 | |||
677b9170ca | |||
92511ab8a8 | |||
393d20472a | |||
5b9dd242f3 | |||
a91bd19739 | |||
ba32dedbef | |||
df87c3e36b | |||
425d344e97 | |||
73ebc1effa | |||
bb8bf6ae10 | |||
5f3e0a9109 | |||
f7090a47a4 | |||
8ffb0ff3e3 | |||
f14b3b32cf | |||
3a8bd8a015 | |||
efc23a693d | |||
1235304a0d | |||
13952f3468 | |||
4a88cbc17a | |||
dc71a125c3 | |||
5d1660567c | |||
57ee5d96a4 | |||
919e0a75cd | |||
43ace2bebe | |||
07ad461e75 | |||
9f4aaa9bc7 | |||
ae01a9fd49 | |||
94a383bea9 | |||
375f733def | |||
74efa008da | |||
5a496bafeb | |||
3a7e6e4b1a | |||
f3598c3c97 | |||
4fd73ac512 | |||
747f956d01 | |||
1519d2c64c | |||
43f4f80836 | |||
ca7726c441 | |||
c78eb5228a | |||
81053c0868 | |||
b1367d237f | |||
603207cc2b | |||
43e2b3e403 | |||
f69422e82f | |||
96e82d4115 | |||
6d4a2c4cc4 | |||
f8e5f73e18 | |||
cdc2811d7b | |||
32d26c3e10 | |||
b482d4d901 | |||
ad00284a22 | |||
a835c9e709 | |||
597f922db7 | |||
cdb456a9b5 | |||
714902d12a | |||
657d8535a6 | |||
0594681760 | |||
f5478cfef5 | |||
e10217c64d | |||
f91def64d7 | |||
f991123545 | |||
86ebbfbdd3 | |||
a35287b367 | |||
ddabb4620e | |||
b86211d2d8 | |||
0b414813aa | |||
7dbe65e5f8 | |||
ef38dd1532 | |||
4b91fb1212 | |||
80a60d58cf | |||
1257f8830a | |||
8ed8bfdc2a | |||
042eb9e5e8 | |||
15cac480fe | |||
02e867c17d | |||
d51cd31ebc | |||
ea354cf035 | |||
0d4bacecd8 | |||
86197c9b62 | |||
f8fd92fb0a | |||
61b038e0d9 | |||
5b60b7ffb8 | |||
6e1911bdd5 | |||
d376074936 | |||
64b985f005 | |||
cc50339bcb | |||
8820501644 | |||
07021b01f4 | |||
13891a52dd | |||
a1bbe23800 | |||
2b5fdc00ee | |||
68ff573904 | |||
3a62814fdc | |||
da043ee0c4 | |||
5cd6ea41f9 | |||
d321be888c | |||
7230b11d3b | |||
7b9ec17d8d | |||
18b38db037 | |||
adfb468913 | |||
43f4211abb | |||
b1b8585518 | |||
d8fd1a5de0 | |||
585baf0668 | |||
f99eff3a99 | |||
ff4b913396 | |||
e861348475 | |||
b0831240b1 | |||
37dee56bb7 | |||
2b11fc2299 | |||
754ca4cd4f | |||
10e3dc16d2 | |||
e23c6dae90 | |||
96c1d7c59c | |||
c574943e16 | |||
3226206267 | |||
63543b890a | |||
b58f859eff | |||
170a1efeb1 | |||
50e3d1667f | |||
269732d8ea | |||
a11206d4ba | |||
cb78a6c3d6 | |||
662280c139 | |||
68dd2fd019 | |||
c193c5d03b | |||
4efb5b43c6 | |||
3d2eb81cd5 | |||
a8d7937889 | |||
98c9fdff24 | |||
f05512fd1d | |||
fc460f9497 | |||
1fd55d98e1 | |||
4f5746f2a7 | |||
3d90a806fa | |||
cf9abcd5b8 | |||
e1036185ae | |||
d1af24736b | |||
236665d7d3 | |||
c340d851d3 | |||
38545cfffd | |||
bf19ecffcb | |||
6fa6d02360 | |||
e588f261f8 | |||
5d5545ec9e | |||
d152050e29 | |||
a0da2c0ea0 | |||
2e86243d88 | |||
6b61c7d454 | |||
3881a5d66d | |||
69b223a370 | |||
894cb6ea27 | |||
b81e3e8f15 | |||
7d49f9b820 | |||
9dad1586af | |||
d60178f598 | |||
5d74e10b08 | |||
40422ab4b0 | |||
b35a23d89e | |||
3445b5b1b6 | |||
8315a3872d | |||
6abea8746c | |||
09c5ad273c | |||
99b8a45f3b | |||
4f416da26b | |||
53b73798d3 | |||
c6e9b1ed5d | |||
4973dd93be | |||
9096737aa7 | |||
3429681f2c | |||
d4c727bb2d | |||
1ae104167a | |||
8869b22a1d | |||
1650af04cd | |||
bdcc2adf3f | |||
570be592bb | |||
d94de05fd4 | |||
69c180d2e8 | |||
134911843a | |||
d31ccbd268 | |||
2bbe39cf4a | |||
4588685e97 | |||
4b2ddfad20 | |||
516b148dae | |||
0c53eadf34 | |||
3e61554625 | |||
6054c2d250 | |||
5589a12b9d | |||
e2384e2722 | |||
d077085595 | |||
53f1032975 | |||
875ec23ade | |||
cee9de7ed1 | |||
badad156e1 | |||
8e89725381 | |||
2219177eac | |||
baf29b1223 | |||
5c0933d19a | |||
8de9eca8ae | |||
d172180660 | |||
9f78b17fd1 | |||
f5e33fb396 | |||
9ae6e45dda | |||
94d88e91c5 | |||
8b4901ce57 | |||
08086be4c5 | |||
f2805bca52 | |||
033e1b8721 | |||
9e290ffddb | |||
6ada2f1b91 | |||
c6e393f5ce | |||
4e443cec09 | |||
528b60eb17 | |||
aedc7c8438 | |||
ec4ccb4a20 | |||
c62ce7d36f | |||
8ee2229c84 | |||
cbd3cf7c20 | |||
d505871faf | |||
246814874c | |||
1250668267 | |||
d616545268 | |||
c88e690bb4 | |||
c1de398acc | |||
73f7c88122 | |||
37ed904f1a | |||
57ecd6e515 | |||
025a339062 | |||
5b5ba53112 | |||
bd87a26db1 | |||
c0283da6ee | |||
e372d624a6 | |||
db6c6e7e0f |
17
.devcontainer/devcontainer.example.json
Normal file
@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "Laradock",
|
||||
"dockerComposeFile": [
|
||||
"../docker-compose.yml",
|
||||
"docker-compose.extend.yml"
|
||||
],
|
||||
"remoteUser": "laradock",
|
||||
"runServices": [
|
||||
"nginx",
|
||||
"postgres",
|
||||
"pgadmin"
|
||||
],
|
||||
"service": "workspace",
|
||||
"workspaceFolder": "/var/www",
|
||||
"shutdownAction": "stopCompose",
|
||||
"postCreateCommand": "uname -a"
|
||||
}
|
6
.devcontainer/docker-compose.extend-example.yml
Normal file
@ -0,0 +1,6 @@
|
||||
version: '3'
|
||||
services:
|
||||
workspace:
|
||||
volumes:
|
||||
- ~/.gitconfig:/home/laradock/.gitconfig
|
||||
- ~/.ssh:/home/laradock/.ssh:ro
|
@ -9,4 +9,4 @@ charset = utf-8
|
||||
|
||||
[{Dockerfile,docker-compose.yml}]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
indent_size = 2
|
||||
|
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
@ -0,0 +1,3 @@
|
||||
### First off, thanks for taking the time to contribute!
|
||||
|
||||
For the contribution guide [click here](http://laradock.io/contributing/).
|
6
.github/FUNDING.yml
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
# DO NOT CHANGE THIS FILE PLEASE.
|
||||
|
||||
open_collective: laradock
|
||||
ko_fi: laradock
|
||||
issuehunt: laradock
|
||||
custom: ['beerpay.io/laradock/laradock', 'paypal.me/mzmmzz']
|
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
@ -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 :)
|
BIN
.github/home-page-images/documentation-button.png
vendored
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
.github/home-page-images/join-us.png
vendored
Normal file
After Width: | Height: | Size: 128 KiB |
BIN
.github/home-page-images/laradock-logo.jpg
vendored
Normal file
After Width: | Height: | Size: 287 KiB |
18
.gitignore
vendored
@ -1,4 +1,20 @@
|
||||
.idea
|
||||
/logs
|
||||
/data
|
||||
.env
|
||||
.env
|
||||
/.project
|
||||
.docker-sync
|
||||
/jenkins/jenkins_home
|
||||
|
||||
/logstash/pipeline/*.conf
|
||||
/logstash/config/pipelines.yml
|
||||
|
||||
/nginx/ssl/*.crt
|
||||
/nginx/ssl/*.key
|
||||
/nginx/ssl/*.csr
|
||||
|
||||
/.devcontainer/*
|
||||
!/.devcontainer/devcontainer.example.json
|
||||
!/.devcontainer/docker-compose.extend-example.yml
|
||||
|
||||
.DS_Store
|
||||
|
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
|
68
.travis.yml
Normal file
@ -0,0 +1,68 @@
|
||||
language: bash
|
||||
sudo: required
|
||||
services:
|
||||
- docker
|
||||
|
||||
env:
|
||||
matrix:
|
||||
- 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=7.3 BUILD_SERVICE=workspace
|
||||
- PHP_VERSION=7.4 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=7.3 BUILD_SERVICE=php-fpm
|
||||
- PHP_VERSION=7.4 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=7.3 BUILD_SERVICE=php-worker
|
||||
- PHP_VERSION=7.4 BUILD_SERVICE=php-worker
|
||||
|
||||
- PHP_VERSION=7.0 BUILD_SERVICE=laravel-horizon
|
||||
- PHP_VERSION=7.1 BUILD_SERVICE=laravel-horizon
|
||||
- PHP_VERSION=7.2 BUILD_SERVICE=laravel-horizon
|
||||
- PHP_VERSION=7.3 BUILD_SERVICE=laravel-horizon
|
||||
- PHP_VERSION=7.4 BUILD_SERVICE=laravel-horizon
|
||||
|
||||
- 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 cassandra"
|
||||
- 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 gearman"
|
||||
- PHP_VERSION=NA BUILD_SERVICE="kibana grafana laravel-echo-server"
|
||||
- PHP_VERSION=NA BUILD_SERVICE="ipython-controller manticore"
|
||||
# - 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:
|
||||
provider: pages
|
||||
skip_cleanup: true
|
||||
local_dir: docs
|
||||
github_token: $GITHUB_TOKEN
|
||||
on:
|
||||
branch: master
|
||||
condition: -n "${HUGO_VERSION}"
|
||||
|
||||
notifications:
|
||||
email: false
|
@ -1 +0,0 @@
|
||||
laradock.io
|
@ -1,199 +0,0 @@
|
||||
---
|
||||
title: Getting Started
|
||||
type: index
|
||||
weight: 2
|
||||
---
|
||||
|
||||
## Requirements
|
||||
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
- [Docker](https://www.docker.com/products/docker/) `>= 1.12`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## 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)
|
||||
- [B) Setup for Multiple Projects](#B)
|
||||
|
||||
|
||||
<a name="A"></a>
|
||||
### A) Setup for Single Project
|
||||
> (Follow these steps if you want a separate Docker environment for each project)
|
||||
|
||||
|
||||
<a name="A1"></a>
|
||||
### A.1) Already have a PHP project:
|
||||
> (Follow these steps if you already have a PHP project, and all you need is an environment to run it)
|
||||
|
||||
1 - Clone laradock on your project root directory:
|
||||
|
||||
```bash
|
||||
git submodule add https://github.com/Laradock/laradock.git
|
||||
```
|
||||
|
||||
**Notes:**
|
||||
|
||||
- If you are not using Git yet for your project, you can use `git clone` instead of `git submodule `.
|
||||
|
||||
- Note 2: To keep track of your Laradock changes, between your projects and also keep Laradock updated. [Check this](#keep-tracking-Laradock)
|
||||
|
||||
|
||||
Your folder structure should look like this:
|
||||
|
||||
```
|
||||
- project1
|
||||
- laradock
|
||||
- project2
|
||||
- laradock
|
||||
```
|
||||
|
||||
|
||||
<a name="A2"></a>
|
||||
### A.2) Don't have a PHP project yet:
|
||||
> (Follow these steps if you don't have a PHP project yet, and you need an environment to create the project)
|
||||
|
||||
1 - Clone this repository anywhere on your machine:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/laradock/laradock.git
|
||||
```
|
||||
|
||||
Your folder structure should look like this:
|
||||
|
||||
```
|
||||
- projects
|
||||
- laradock
|
||||
- myProject
|
||||
```
|
||||
|
||||
2 - Edit the `docker-compose.yml` file to map to your project directory once you have it (example: `- ../myProject:/var/www`).
|
||||
|
||||
3 - Stop and re-run your docker-compose command for the changes to take place.
|
||||
|
||||
```
|
||||
docker-compose stop && docker-compose up -d XXXX YYYY ZZZZ ....
|
||||
```
|
||||
|
||||
<a name="B"></a>
|
||||
### B) Setup for Multiple Projects:
|
||||
> (Follow these steps if you want a single Docker environment for all project)
|
||||
|
||||
1 - Clone this repository anywhere on your machine:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/laradock/laradock.git
|
||||
```
|
||||
|
||||
2 - Edit the `docker-compose.yml` (or the `.env`) file to map to your projects directories:
|
||||
|
||||
```
|
||||
applications:
|
||||
volumes:
|
||||
- ../project1/:/var/www/project1
|
||||
- ../project2/:/var/www/project2
|
||||
```
|
||||
|
||||
3 - You can access all sites by visiting `http://localhost/project1/public` and `http://localhost/project2/public` but of course that's not very useful so let's setup NGINX quickly.
|
||||
|
||||
|
||||
4 - Go to `nginx/sites` and copy `sample.conf.example` to `project1.conf` then to `project2.conf`
|
||||
|
||||
5 - Open the `project1.conf` file and edit the `server_name` and the `root` as follow:
|
||||
|
||||
```
|
||||
server_name project1.dev;
|
||||
root /var/www/project1/public;
|
||||
```
|
||||
Do the same for each project `project2.conf`, `project3.conf`,...
|
||||
|
||||
6 - Add the domains to the **hosts** files.
|
||||
|
||||
```
|
||||
127.0.0.1 project1.dev
|
||||
```
|
||||
|
||||
7 - Create your project Databases. Right now you have to do it manually by entering your DB container, until we automate it soon.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## 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](#upgrading-laradock)
|
||||
- Use Laradock v3.* (Visit the `Laradock-ToolBox` [Branch](https://github.com/laradock/laradock/tree/Laradock-ToolBox)).
|
||||
|
||||
<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>
|
||||
|
||||
1 - Run Containers: *(Make sure you are in the `laradock` folder before running the `docker-compose` commands).*
|
||||
|
||||
|
||||
**Example:** Running NGINX and MySQL:
|
||||
|
||||
```bash
|
||||
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`.
|
||||
|
||||
|
||||
You can select your own combination of Containers form the list below:
|
||||
|
||||
`nginx`, `hhvm`, `php-fpm`, `mysql`, `redis`, `postgres`, `mariadb`, `neo4j`, `mongo`, `apache2`, `caddy`, `memcached`, `beanstalkd`, `beanstalkd-console`, `rabbitmq`, `beanstalkd-console`, `workspace`, `phpmyadmin`, `aerospike`, `pgadmin`, `elasticsearch`, `rethinkdb`, `postgres-postgis`, `certbot`, `mailhog`, `minio` and more...!
|
||||
|
||||
*(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>
|
||||
2 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, ...).
|
||||
|
||||
```bash
|
||||
docker-compose exec workspace bash
|
||||
```
|
||||
|
||||
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:
|
||||
|
||||
```shell
|
||||
docker-compose exec --user=laradock workspace bash
|
||||
```
|
||||
|
||||
*You can change the PUID (User id) and PGID (group id) variables from the `docker-compose.yml` or the `.env`)*
|
||||
|
||||
<br>
|
||||
3 - Edit your project configurations.
|
||||
|
||||
Open your `.env` file and set the `DB_HOST` to `mysql`:
|
||||
|
||||
```env
|
||||
DB_HOST=mysql
|
||||
```
|
||||
|
||||
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
|
||||
|
||||
<br>
|
||||
4 - Open your browser and visit your localhost address `http://localhost/`.
|
@ -1,9 +0,0 @@
|
||||
---
|
||||
title: Help & Questions
|
||||
type: index
|
||||
weight: 5
|
||||
---
|
||||
|
||||
Join the chat room on [Gitter](https://gitter.im/Laradock/laradock) and get help and support from the community.
|
||||
|
||||
You can as well can open an [issue](https://github.com/laradock/laradock/issues) on Github (will be labeled as Question) and discuss it with people on [Gitter](https://gitter.im/Laradock/laradock).
|
@ -1,5 +0,0 @@
|
||||
---
|
||||
title: Welcome
|
||||
type: index
|
||||
weight: 0
|
||||
---
|
@ -1,206 +0,0 @@
|
||||
---
|
||||
title: Introduction
|
||||
type: index
|
||||
weight: 1
|
||||
---
|
||||
|
||||
Laradock strives to make the PHP development experience easier and faster.
|
||||
|
||||
It contains pre-packaged Docker Images that provides you a wonderful *development* environment without requiring you to install PHP, NGINX, MySQL, Redis, and any other software on your machines.
|
||||
|
||||
Laradock is configured to run Laravel Apps by default, and it can be modified to run all kinds of PHP Apps (Symfony, CodeIgniter, WordPress, Drupal...).
|
||||
|
||||
|
||||
|
||||
|
||||
## Quick Overview
|
||||
|
||||
Let's see how easy it is to install `NGINX`, `PHP`, `Composer`, `MySQL`, `Redis` and `beanstalkd`:
|
||||
|
||||
1 - Clone Laradock inside your PHP project:
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Laradock/laradock.git
|
||||
```
|
||||
|
||||
2 - Enter the laradock folder and rename `env-example` to `.env`.
|
||||
|
||||
```shell
|
||||
cp env-example .env
|
||||
```
|
||||
|
||||
3 - Run your containers:
|
||||
|
||||
```shell
|
||||
docker-compose up -d nginx mysql redis beanstalkd
|
||||
```
|
||||
|
||||
3 - Open your project's `.env` file and set the following:
|
||||
|
||||
```shell
|
||||
DB_HOST=mysql
|
||||
REDIS_HOST=redis
|
||||
QUEUE_HOST=beanstalkd
|
||||
```
|
||||
|
||||
4 - Open your browser and visit localhost: `http://localhost`.
|
||||
|
||||
```shell
|
||||
That's it! enjoy :)
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="what-is-docker"></a>
|
||||
## What is Docker?
|
||||
|
||||
[Docker](https://www.docker.com) is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of [operating-system-level virtualization](https://en.wikipedia.org/wiki/Operating-system-level_virtualization) on Linux, Mac OS and Windows.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="why-docker-not-vagrant"></a>
|
||||
## Why Docker not Vagrant!?
|
||||
|
||||
[Vagrant](https://www.vagrantup.com) creates Virtual Machines in minutes while Docker creates Virtual Containers in seconds.
|
||||
|
||||
Instead of providing a full Virtual Machines, like you get with Vagrant, Docker provides you **lightweight** Virtual Containers, that share the same kernel and allow to safely execute independent processes.
|
||||
|
||||
In addition to the speed, Docker gives tons of features that cannot be achieved with Vagrant.
|
||||
|
||||
Most importantly Docker can run on Development and on Production (same environment everywhere). While Vagrant is designed for Development only, (so you have to re-provision your server on Production every time).
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="laradock-vs-homestead"></a>
|
||||
## Laradock VS Homestead (For Laravel Developers)
|
||||
|
||||
> Laradock It's like Laravel Homestead but for Docker instead of Vagrant.
|
||||
|
||||
Laradock and [Homestead](https://laravel.com/docs/master/homestead) both give you complete virtual development environments. (Without the need to install and configure every single software on your own Operating System).
|
||||
|
||||
- Homestead is a tool that controls Vagrant for you (using Homestead special commands). And Vagrant manages your Virtual Machine.
|
||||
|
||||
- Laradock is a tool that controls Docker for you (using Docker & Docker Compose official commands). And Docker manages your Virtual Containers.
|
||||
|
||||
Running a virtual container is much faster than running a full virtual Machine. Thus **Laradock is much faster than Homestead**.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="Demo"></a>
|
||||
## Demo Video
|
||||
|
||||
What's better than a **Demo Video**:
|
||||
|
||||
- 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)
|
||||
- Laradock [v0.1](https://www.youtube.com/watch?v=3YQsHe6oF80)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="features"></a>
|
||||
## Features
|
||||
|
||||
- Easy switch between PHP versions: 7.0, 5.6, 5.5...
|
||||
- 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...
|
||||
- Easy to customize any container, with simple edit to the `Dockerfile`.
|
||||
- All Images extends from an official base Image. (Trusted base Images).
|
||||
- Pre-configured NGINX for Laravel.
|
||||
- Easy to apply configurations inside containers.
|
||||
- Clean and well structured Dockerfiles (`Dockerfile`).
|
||||
- Latest version of the Docker Compose file (`docker-compose`).
|
||||
- Everything is visible and editable.
|
||||
- Fast Images Builds.
|
||||
- More to come every week..
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="Supported-Containers"></a>
|
||||
## Supported Software (Containers)
|
||||
|
||||
- **Database Engines:**
|
||||
- MySQL
|
||||
- MariaDB
|
||||
- MongoDB
|
||||
- Neo4j
|
||||
- RethinkDB
|
||||
- PostgreSQL
|
||||
- Postgres Postgis
|
||||
- **Cache Engines:**
|
||||
- Redis
|
||||
- Memcached
|
||||
- Aerospike
|
||||
- **PHP Servers:**
|
||||
- NGINX
|
||||
- Apache2
|
||||
- Caddy
|
||||
- **PHP Compilers:**
|
||||
- PHP-FPM
|
||||
- HHVM
|
||||
- **Message Queuing Systems:**
|
||||
- Beanstalkd
|
||||
- Beanstalkd Console
|
||||
- RabbitMQ
|
||||
- RabbitMQ Console
|
||||
- **Tools:**
|
||||
- PhpMyAdmin
|
||||
- PgAdmin
|
||||
- ElasticSearch
|
||||
- Selenium
|
||||
- Certbot
|
||||
- Mailhog
|
||||
- Minio
|
||||
- Workspace
|
||||
- PHP7-CLI
|
||||
- Composer
|
||||
- Git
|
||||
- Linuxbrew
|
||||
- Node
|
||||
- Gulp
|
||||
- SQLite
|
||||
- xDebug
|
||||
- Envoy
|
||||
- Deployer
|
||||
- Vim
|
||||
- Yarn
|
||||
- ... Many other supported tools are not documented. (Will be updated soon)
|
||||
|
||||
>If you can't find your Software, build it yourself and add it to this list. Contributions are welcomed :)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="Chat"></a>
|
||||
## Chat with us
|
||||
|
||||
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)
|
Before Width: | Height: | Size: 246 KiB |
Before Width: | Height: | Size: 84 KiB |
@ -1,78 +0,0 @@
|
||||
<nav aria-label="Navigation">
|
||||
<!--<a href="{{ with .Site.Params.repo_url }}{{ . }}{{ else }}{{ .Site.BaseURL }}{{ end }}" class="project">-->
|
||||
<!--<div class="banner">-->
|
||||
<!--{{ with .Site.Params.logo }}-->
|
||||
<!--<div class="logo">-->
|
||||
<!--<img src="{{ $.Site.BaseURL }}{{ . }}">-->
|
||||
<!--</div>-->
|
||||
<!--{{ end }}-->
|
||||
<!--<div class="name">-->
|
||||
<!--<strong>{{ .Site.Title }} {{ with .Site.Params.version }}<span class="version">{{ . }}</span>{{ end }}</strong>-->
|
||||
<!--{{ with .Scratch.Get "repo_id" }}-->
|
||||
<!--<br>-->
|
||||
<!--{{ . }}-->
|
||||
<!--{{ end }}-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!--</a>-->
|
||||
|
||||
<div class="scrollable">
|
||||
<div class="wrapper">
|
||||
{{ if (eq (trim .Site.Params.provider " " | lower) "github") | and (isset .Site.Params "repo_url") }}
|
||||
<ul class="repo">
|
||||
<li class="repo-download">
|
||||
<a href="{{ .Site.Params.repo_url }}/archive/master.zip" target="_blank" title="Download" data-action="download">
|
||||
<i class="icon icon-download"></i> Download
|
||||
</a>
|
||||
</li>
|
||||
<li class="repo-stars">
|
||||
<a href="{{ .Site.Params.repo_url }}/stargazers" target="_blank" title="Stargazers" data-action="star">
|
||||
<i class="icon icon-star"></i> Stars
|
||||
<span class="count">–</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<hr>
|
||||
{{ end }}
|
||||
|
||||
<div class="toc">
|
||||
{{ if gt (len .Site.Menus.main) 0 }}
|
||||
<ul>
|
||||
{{ partial "nav" . }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
|
||||
{{ 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 }}
|
||||
|
||||
<!--{{ with .Site.Social.github }}-->
|
||||
<!--<li>-->
|
||||
<!--<a href="https://github.com/{{ . }}" target="_blank" title="@{{ . }} on GitHub">-->
|
||||
<!--@{{ . }} on GitHub-->
|
||||
<!--</a>-->
|
||||
<!--</li>-->
|
||||
<!--{{ end }}-->
|
||||
|
||||
{{ with .Site.Social.email }}
|
||||
<li>
|
||||
<a href="mailto:{{ . }}" title="Email of {{ . }}">
|
||||
Contact via email
|
||||
</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
Before Width: | Height: | Size: 254 KiB |
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 145 KiB |
@ -1,105 +0,0 @@
|
||||
/*
|
||||
* overwrite the current primary color of the
|
||||
* theme that is used as fallback in codeblocks
|
||||
*/
|
||||
.article pre code {
|
||||
color: rgba(0, 0, 0, 0.8) !important;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
HIGHLIGHT.JS THEME
|
||||
|
||||
tweaked version of the Github theme
|
||||
*/
|
||||
|
||||
.hljs {
|
||||
display:block;
|
||||
overflow-x:auto;
|
||||
}
|
||||
|
||||
.hljs-comment,
|
||||
.hljs-quote {
|
||||
color:#998;
|
||||
font-style:italic;
|
||||
}
|
||||
|
||||
.hljs-keyword,
|
||||
.hljs-selector-tag,
|
||||
.hljs-subst {
|
||||
color:#333;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.hljs-number,
|
||||
.hljs-literal,
|
||||
.hljs-variable,
|
||||
.hljs-template-variable,
|
||||
.hljs-tag .hljs-attr {
|
||||
color:teal;
|
||||
}
|
||||
|
||||
.hljs-string,
|
||||
.hljs-doctag {
|
||||
color:#d14;
|
||||
}
|
||||
|
||||
.hljs-title,
|
||||
.hljs-section,
|
||||
.hljs-selector-id {
|
||||
color:#900;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.hljs-subst {
|
||||
font-weight:400;
|
||||
}
|
||||
|
||||
.hljs-type,
|
||||
.hljs-class .hljs-title {
|
||||
color:#458;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.hljs-tag,
|
||||
.hljs-name,
|
||||
.hljs-attribute {
|
||||
color:navy;
|
||||
font-weight:400;
|
||||
}
|
||||
|
||||
.hljs-regexp,
|
||||
.hljs-link {
|
||||
color:#009926;
|
||||
}
|
||||
|
||||
.hljs-symbol,
|
||||
.hljs-bullet {
|
||||
color:#990073;
|
||||
}
|
||||
|
||||
.hljs-built_in,
|
||||
.hljs-builtin-name {
|
||||
color:#0086b3;
|
||||
}
|
||||
|
||||
.hljs-meta {
|
||||
color:#999;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.hljs-deletion {
|
||||
background:#fdd;
|
||||
}
|
||||
|
||||
.hljs-addition {
|
||||
background:#dfd;
|
||||
}
|
||||
|
||||
.hljs-emphasis {
|
||||
font-style:italic;
|
||||
}
|
||||
|
||||
.hljs-strong {
|
||||
font-weight:700;
|
||||
}
|
@ -1,17 +1,18 @@
|
||||
baseurl = "http://laradock.io/"
|
||||
baseurl = "https://laradock.io/"
|
||||
languageCode = "en-us"
|
||||
publishDir = "../../docs"
|
||||
publishDir = "../docs"
|
||||
title = "Laradock"
|
||||
theme = "hugo-material-docs"
|
||||
metadataformat = "yaml"
|
||||
canonifyurls = true
|
||||
uglyurls = true
|
||||
# Enable Google Analytics by entering your tracking id
|
||||
googleAnalytics = "UA-37514928-9"
|
||||
|
||||
[params]
|
||||
# General information
|
||||
author = "Mahmoud Zalt"
|
||||
description = "Laradock documentations."
|
||||
description = "Full PHP development environment for Docker."
|
||||
copyright = ""
|
||||
|
||||
# Repository
|
||||
@ -19,13 +20,13 @@ googleAnalytics = "UA-37514928-9"
|
||||
repo_url = ""
|
||||
|
||||
version = ""
|
||||
logo = ""
|
||||
logo = "images/logo.png"
|
||||
favicon = ""
|
||||
|
||||
permalink = "#"
|
||||
|
||||
# Custom assets
|
||||
custom_css = []
|
||||
custom_css = ["custom-style.css"]
|
||||
custom_js = []
|
||||
|
||||
# Syntax highlighting theme
|
||||
@ -47,40 +48,45 @@ googleAnalytics = "UA-37514928-9"
|
||||
# ------- MENU START -----------------------------------------
|
||||
|
||||
[[menu.main]]
|
||||
name = "Introduction"
|
||||
name = "1. Introduction"
|
||||
url = "introduction/"
|
||||
weight = 1
|
||||
|
||||
[[menu.main]]
|
||||
name = "Getting Started"
|
||||
name = "2. Getting Started"
|
||||
url = "getting-started/"
|
||||
weight = 2
|
||||
|
||||
[[menu.main]]
|
||||
name = "Documentation"
|
||||
name = "3. Documentation"
|
||||
url = "documentation/"
|
||||
weight = 3
|
||||
|
||||
[[menu.main]]
|
||||
name = "Related Projects"
|
||||
url = "related-projects/"
|
||||
name = "4. Guides"
|
||||
url = "guides/"
|
||||
weight = 4
|
||||
|
||||
[[menu.main]]
|
||||
name = "Help & Questions"
|
||||
name = "5. Help & Questions"
|
||||
url = "help/"
|
||||
weight = 5
|
||||
|
||||
[[menu.main]]
|
||||
name = "Contributing"
|
||||
url = "contributing/"
|
||||
name = "6. Related Projects"
|
||||
url = "related-projects/"
|
||||
weight = 6
|
||||
|
||||
[[menu.main]]
|
||||
name = "License"
|
||||
url = "license/"
|
||||
name = "7. Contributing"
|
||||
url = "contributing/"
|
||||
weight = 7
|
||||
|
||||
[[menu.main]]
|
||||
name = "8. License"
|
||||
url = "license/"
|
||||
weight = 8
|
||||
|
||||
# ------- MENU END -----------------------------------------
|
||||
|
||||
[blackfriday]
|
@ -1,19 +1,20 @@
|
||||
---
|
||||
title: Contributing
|
||||
title: 7. Contributing
|
||||
type: index
|
||||
weight: 6
|
||||
weight: 7
|
||||
---
|
||||
|
||||
|
||||
Your contribution is more than welcome.
|
||||
|
||||
## I have a Question/Problem
|
||||
## Have a Question
|
||||
|
||||
If you have questions about how to use Laradock, please direct your questions to the discussion on [Gitter](https://gitter.im/Laradock/laradock). If you believe your question could help others, then consider opening an [Issue](https://github.com/laradock/laradock/issues) (it will be labeled as `Question`) And you can still seek help on Gitter for it.
|
||||
|
||||
## I 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).
|
||||
|
||||
|
||||
## Found an Issue
|
||||
|
||||
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:**
|
||||
|
||||
@ -23,62 +24,105 @@ 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.*
|
||||
|
||||
|
||||
## I want a Feature
|
||||
|
||||
## Want a Feature
|
||||
You can request a new feature by submitting an [Issue](https://github.com/laradock/laradock/issues) (it will be labeled as `Feature Suggestion`). If you would like to implement a new feature then consider submitting a Pull Request yourself.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## I want to update the Documentation (Site)
|
||||
## Update the Documentation (Site)
|
||||
|
||||
Laradock uses [Hugo](https://gohugo.io/) as website generator tool, with the [Material Docs theme](http://themes.gohugo.io/theme/material-docs/). You might need to check their docs quickly.
|
||||
|
||||
Go the `DOCUMENTATION/content` and search for the markdown file you want to edit
|
||||
|
||||
1. Install [Hugo](https://gohugo.io/) on your machine (easy steps).
|
||||
2. Open the `DOCUMENTATION/_settings/content` and search for the markdown file you want to edit (every folder is a section in the menu).
|
||||
3. After done editing, run the this command `hugo` to generate the updated site inside the `docs` folder (It's recommended to delete all files form the `/docs` folder, except the `CNAME` file, before running the `hugo` command).
|
||||
Note: Every folder represents a section in the sidebar "Menu". And every page and sidebar has a `weight` number to show it's position in the site.
|
||||
|
||||
#### To Host the website locally
|
||||
Go to `DOCUMENTATION/_settings` in your terminal and run `hugo serve` to host the website locally.
|
||||
To update the sidebar or add a new section to it, you can edit this `DOCUMENTATION/config.toml` toml file.
|
||||
|
||||
#### Edit the sidebar
|
||||
To add a new section to the sidebar or edit existing one, you need to edit this file `DOCUMENTATION/_settings/config.toml`.
|
||||
> The site will be auto-generated in the `docs/` folder by [Travis CI](https://travis-ci.org/laradock/laradock/).
|
||||
|
||||
|
||||
|
||||
### Host the documentation locally
|
||||
|
||||
1. Install [Hugo](https://gohugo.io/) on your machine.
|
||||
2. Edit the `DOCUMENTATION/content`.
|
||||
3. Delete the `/docs` folder from the root.
|
||||
4. After you finish the editing, go to `DOCUMENTATION/` and run the `hugo` command to generate the HTML docs (inside a new `/docs` folder).
|
||||
|
||||
|
||||
|
||||
|
||||
## How to support new Software (Add new Container)
|
||||
## Support new Software (Add new Container)
|
||||
|
||||
* Create folder with the software name.
|
||||
* Fork the repo and clone the code.
|
||||
|
||||
* Add a `Dockerfile`, write your code there.
|
||||
* Create folder as the software name (example: `mysql` - `nginx`).
|
||||
|
||||
* You may add additional files in the software folder.
|
||||
* Add your `Dockerfile` in the folder "you may add additional files as well".
|
||||
|
||||
* Add the software to the `docker-compose.yml` file.
|
||||
|
||||
* Make sure you follow our commenting style.
|
||||
* Make sure you follow the same code/comments style.
|
||||
|
||||
* Add the software in the `Documentation`.
|
||||
* Add the environment variables to the `env-example` if you have any.
|
||||
|
||||
## Edit existing Software (Edit a Container)
|
||||
* **MOST IMPORTANTLY** update the `Documentation`, add as much information.
|
||||
|
||||
* Open the software (container) folder.
|
||||
* Submit a Pull Request, to the `master` branch.
|
||||
|
||||
* Edit the files you want to update.
|
||||
|
||||
* **Note:** If you want to edit the base image of the `Workspace` or the `php-fpm` Containers,
|
||||
you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the Laradock repository.
|
||||
|
||||
## Edit supported Software (Edit a Container)
|
||||
|
||||
* Fork the repo and clone the code.
|
||||
|
||||
* Open the software (container) folder (example: `mysql` - `nginx`).
|
||||
|
||||
* Edit the files.
|
||||
|
||||
* Make sure to update the `Documentation` in case you made any changes.
|
||||
|
||||
* Submit a Pull Request, to the `master` branch.
|
||||
|
||||
## Pull Request
|
||||
|
||||
|
||||
|
||||
## Edit Base Image
|
||||
|
||||
* Open any dockerfile, copy the base image name (example: `FROM phusion/baseimage:latest`).
|
||||
|
||||
* Search for the image in the [Docker Hub](https://hub.docker.com/search/) and find the source..
|
||||
|
||||
*Most of the image in Laradock are offical images, these projects live in other repositories and maintainer by other organizations.*
|
||||
|
||||
**Note:** Laradock has two base images for (`Workspace` and `php-fpm`, mainly made to speed up the build time on your machine.
|
||||
|
||||
* Find the dockerfiles, edit them and submit a Pull Request.
|
||||
|
||||
* When updating a Laradock base image (`Workspace` or `php-fpm`), ask a project maintainer "Admin" to build a new image after your PR is merged.
|
||||
|
||||
**Note:** after the base image is updated, every dockerfile that uses that image, needs to update his base image tag to get the updated code.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
|
||||
|
||||
## Submit Pull Request Instructions
|
||||
|
||||
### 1. Before Submitting a Pull Request (PR)
|
||||
|
2233
DOCUMENTATION/content/documentation/index.md
Normal file
228
DOCUMENTATION/content/getting-started/index.md
Normal file
@ -0,0 +1,228 @@
|
||||
---
|
||||
title: 2. Getting Started
|
||||
type: index
|
||||
weight: 2
|
||||
---
|
||||
|
||||
## 2.1 Requirements
|
||||
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
- [Docker](https://www.docker.com/products/docker/) `>= 17.12`
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.2 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)
|
||||
- [B) Setup for Multiple Projects](#B)
|
||||
|
||||
|
||||
<a name="A"></a>
|
||||
### A) Setup for Single Project
|
||||
> (Follow these steps if you want a separate Docker environment for each project)
|
||||
|
||||
|
||||
<a name="A1"></a>
|
||||
### A.1) Already have a PHP project:
|
||||
|
||||
1 - Clone laradock on your project root directory:
|
||||
|
||||
```bash
|
||||
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 `.
|
||||
|
||||
*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)*
|
||||
|
||||
|
||||
2 - Make sure your folder structure should look like this:
|
||||
|
||||
```
|
||||
+ project-a
|
||||
+ laradock-a
|
||||
+ project-b
|
||||
+ laradock-b
|
||||
```
|
||||
|
||||
*(It's important to rename the laradock folders to unique name in each project, if you want to run laradock per project).*
|
||||
|
||||
3 - Go to the [Usage](#Usage) section.
|
||||
|
||||
<a name="A2"></a>
|
||||
### A.2) Don't have a PHP project yet:
|
||||
|
||||
1 - Clone this repository anywhere on your machine:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/laradock/laradock.git
|
||||
```
|
||||
|
||||
Your folder structure should look like this:
|
||||
|
||||
```
|
||||
+ laradock
|
||||
+ project-z
|
||||
```
|
||||
|
||||
2 - Edit your web server sites configuration.
|
||||
|
||||
We'll need to do step 1 of the [Usage](#Usage) section now to make this happen.
|
||||
|
||||
```
|
||||
cp env-example .env
|
||||
```
|
||||
|
||||
At the top, change the `APP_CODE_PATH_HOST` variable to your project path.
|
||||
|
||||
```
|
||||
APP_CODE_PATH_HOST=../project-z/
|
||||
```
|
||||
|
||||
Make sure to replace `project-z` with your project folder name.
|
||||
|
||||
3 - Go to the [Usage](#Usage) section.
|
||||
|
||||
|
||||
<a name="B"></a>
|
||||
### B) Setup for Multiple Projects:
|
||||
> (Follow these steps if you want a single Docker environment for all your projects)
|
||||
|
||||
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
|
||||
```
|
||||
|
||||
Your folder structure should look like this:
|
||||
|
||||
```
|
||||
+ laradock
|
||||
+ project-1
|
||||
+ project-2
|
||||
```
|
||||
|
||||
2 - Go to your web server and create config files to point to different project directory when visiting different domains:
|
||||
|
||||
For **Nginx** go to `nginx/sites`, for **Apache2** `apache2/sites`.
|
||||
|
||||
Laradock by default includes some sample files for you to copy `app.conf.example`, `laravel.conf.example` and `symfony.conf.example`.
|
||||
|
||||
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.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`.
|
||||
|
||||
4 - Go to the [Usage](#Usage) section.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="Usage"></a>
|
||||
## 2.3 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)*
|
||||
|
||||
<br>
|
||||
|
||||
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>
|
||||
|
||||
1 - Enter the laradock folder and copy `env-example` to `.env`
|
||||
|
||||
```shell
|
||||
cp env-example .env
|
||||
```
|
||||
|
||||
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 being 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 `;`.
|
||||
|
||||
By default the containers that will be created have the current directory name as suffix (e.g. `laradock_workspace_1`). This can cause mixture of data inside the container volumes if you use laradock in multiple projects. In this case, either read the guide for [multiple projects](#B) or change the variable `COMPOSE_PROJECT_NAME` to something unique like your project name.
|
||||
|
||||
2 - Build the environment and run it using `docker-compose`
|
||||
|
||||
In this example we'll see how to run NGINX (web server) and MySQL (database engine) to host a PHP Web Scripts:
|
||||
|
||||
```bash
|
||||
docker-compose up -d nginx mysql
|
||||
```
|
||||
|
||||
**Note**: All the web server containers `nginx`, `apache` ..etc depends on `php-fpm`, which means if you run any of them, they will automatically launch the `php-fpm` container for you, so no need to explicitly specify it in the `up` command. If you have to do so, you may need to run them as follows: `docker-compose up -d nginx php-fpm mysql`.
|
||||
|
||||
|
||||
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, ...)
|
||||
|
||||
```bash
|
||||
docker-compose exec workspace bash
|
||||
```
|
||||
|
||||
*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:
|
||||
|
||||
```shell
|
||||
docker-compose exec --user=laradock workspace bash
|
||||
```
|
||||
|
||||
*You can change the PUID (User id) and PGID (group id) variables from the `.env` file)*
|
||||
|
||||
<br>
|
||||
4 - Update your project configuration to use the database host
|
||||
|
||||
Open your PHP project's `.env` file or whichever configuration file you are reading from, and set the database host `DB_HOST` to `mysql`:
|
||||
|
||||
```env
|
||||
DB_HOST=mysql
|
||||
```
|
||||
|
||||
You need to use the Laradock's default DB credentials which can be found in the `.env` file (ex: `MYSQL_USER=`).
|
||||
Or you can change them and rebuild the container.
|
||||
|
||||
*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.
|
||||
|
||||
If you followed the multiple projects setup, you can visit `http://project-1.test/` and `http://project-2.test/`.
|
||||
|
||||
[http://localhost:8080](http://localhost:8080)
|
||||
|
||||
Make sure you add use the right port number as provided by your running server. Ex: NGINX uses port 8080 by default while Apache2 uses 80.
|
878
DOCUMENTATION/content/guides/index.md
Normal file
@ -0,0 +1,878 @@
|
||||
---
|
||||
title: 4. Guides
|
||||
type: index
|
||||
weight: 4
|
||||
---
|
||||
|
||||
|
||||
<a name="Digital-Ocean"></a>
|
||||
## Production Setup on Digital Ocean
|
||||
|
||||
### Install Docker
|
||||
|
||||
- Visit [DigitalOcean](https://cloud.digitalocean.com/login) and login.
|
||||
- Click the `Create Droplet` button.
|
||||
- Open the `One-click apps` tab.
|
||||
- Select Docker with your preferred version.
|
||||
- Continue creating the droplet as you normally would.
|
||||
- If needed, check your e-mail for the droplet root password.
|
||||
|
||||
### SSH to your Server
|
||||
|
||||
Find the IP address of the droplet in the DigitalOcean interface. Use it to connect to the server.
|
||||
|
||||
```
|
||||
ssh root@ipaddress
|
||||
```
|
||||
|
||||
You may be prompted for a password. Type the one you found within your e-mailbox. It'll then ask you to change the password.
|
||||
|
||||
You can now check if Docker is available:
|
||||
|
||||
```
|
||||
$root@server:~# docker
|
||||
```
|
||||
|
||||
### Set Up Your Laravel Project
|
||||
|
||||
```
|
||||
$root@server:~# apt-get install git
|
||||
$root@server:~# git clone https://github.com/laravel/laravel
|
||||
$root@server:~# cd laravel
|
||||
$root@server:~/laravel/ git submodule add https://github.com/Laradock/laradock.git
|
||||
$root@server:~/laravel/ cd laradock
|
||||
```
|
||||
|
||||
### Enter the laradock folder and rename env-example to .env.
|
||||
```
|
||||
$root@server:~/laravel/laradock# cp env-example .env
|
||||
```
|
||||
|
||||
### Create Your Laradock Containers
|
||||
|
||||
```
|
||||
$root@server:~/laravel/laradock# docker-compose up -d nginx mysql
|
||||
```
|
||||
|
||||
Note that more containers are available, find them in the [docs](http://laradock.io/introduction/#supported-software-containers) or the `docker-compose.yml` file.
|
||||
|
||||
### Go to Your Workspace
|
||||
|
||||
```
|
||||
docker-compose exec workspace bash
|
||||
```
|
||||
|
||||
### Execute commands
|
||||
|
||||
If you want to only execute some command and don't want to enter bash, you can execute `docker-compose run workspace <command>`.
|
||||
|
||||
```
|
||||
docker-compose run workspace php artisan migrate
|
||||
```
|
||||
|
||||
### Prepare for Visual Studio Code remote development
|
||||
|
||||
If you want to use Visual Studio Code for [remote development](https://code.visualstudio.com/docs/remote/containers) directly on your `workspace` container, copy file `devcontainer.example.json` to `devcontainer.json` and customize it (see [devcontainer.json reference](https://code.visualstudio.com/docs/remote/containers#_devcontainerjson-reference) for more options):
|
||||
```
|
||||
cd .devcontainer
|
||||
cp devcontainer.example.json devcontainer.json
|
||||
```
|
||||
|
||||
Then open your `laradock` folder in Visual Studio Code and click on popup button **Reopen in Container**.
|
||||
|
||||
### Install and configure Laravel
|
||||
|
||||
Let's install Laravel's dependencies, add the `.env` file, generate the key and give proper permissions to the cache folder.
|
||||
|
||||
```
|
||||
$ root@workspace:/var/www# composer install
|
||||
$ root@workspace:/var/www# cp .env.example .env
|
||||
$ root@workspace:/var/www# php artisan key:generate
|
||||
$ root@workspace:/var/www# exit
|
||||
$root@server:~/laravel/laradock# cd ..
|
||||
$root@server:~/laravel# sudo chmod -R 777 storage bootstrap/cache
|
||||
```
|
||||
|
||||
You can then view your Laravel site by visiting the IP address of your server in your browser. For example:
|
||||
|
||||
```
|
||||
http://192.168.1.1
|
||||
```
|
||||
|
||||
It should show you the Laravel default welcome page.
|
||||
|
||||
However, we want it to show up using your custom domain name, as well.
|
||||
|
||||
### Using Your Own Domain Name
|
||||
|
||||
Login to your DNS provider, such as Godaddy, Namecheap.
|
||||
|
||||
Point the Custom Domain Name Server to:
|
||||
|
||||
```
|
||||
ns1.digitalocean.com
|
||||
ns2.digitalocean.com
|
||||
ns3.digitalocean.com
|
||||
```
|
||||
|
||||
Within DigitalOcean, you'll need to change some settings, too.
|
||||
|
||||
Visit: https://cloud.digitalocean.com/networking/domains
|
||||
|
||||
Add your domain name and choose the server IP you'd provision earlier.
|
||||
|
||||
### Serving Site With NGINX (HTTP ONLY)
|
||||
|
||||
Go back to command line.
|
||||
|
||||
```
|
||||
$root@server:~/laravel/laradock# cd nginx
|
||||
$root@server:~/laravel/laradock/nginx# vim laravel.conf
|
||||
```
|
||||
|
||||
Remove `default_server`
|
||||
|
||||
```
|
||||
listen 80 default_server;
|
||||
listen [::]:80 default_server ipv6only=on;
|
||||
```
|
||||
|
||||
And add `server_name` (your custom domain)
|
||||
|
||||
```
|
||||
listen 80;
|
||||
listen [::]:80 ipv6only=on;
|
||||
server_name yourdomain.com;
|
||||
```
|
||||
|
||||
### Rebuild Your Nginx
|
||||
|
||||
```
|
||||
$root@server:~/laravel/laradock# docker-compose down
|
||||
$root@server:~/laravel/laradock# docker-compose build nginx
|
||||
```
|
||||
|
||||
### Re Run Your Containers MYSQL and NGINX
|
||||
|
||||
```
|
||||
$root@server:~/laravel/laradock/nginx# docker-compose up -d nginx mysql
|
||||
```
|
||||
|
||||
**View Your Site with HTTP ONLY (http://yourdomain.com)**
|
||||
|
||||
### Run Site on SSL with Let's Encrypt Certificate
|
||||
|
||||
**Note: You need to Use Caddy here Instead of Nginx**
|
||||
|
||||
To go Caddy Folders and Edit CaddyFile
|
||||
|
||||
```
|
||||
$root@server:~/laravel/laradock# cd caddy
|
||||
$root@server:~/laravel/laradock/caddy# vim Caddyfile
|
||||
```
|
||||
|
||||
Remove 0.0.0.0:80
|
||||
|
||||
```
|
||||
0.0.0.0:80
|
||||
root /var/www/public
|
||||
```
|
||||
|
||||
and replace with your https://yourdomain.com
|
||||
|
||||
```
|
||||
https://yourdomain.com
|
||||
root /var/www/public
|
||||
```
|
||||
|
||||
uncomment tls
|
||||
|
||||
```
|
||||
#tls self-signed
|
||||
```
|
||||
|
||||
and replace self-signed with your email address
|
||||
|
||||
```
|
||||
tls serverbreaker@gmai.com
|
||||
```
|
||||
|
||||
This is needed Prior to Creating Let's Encypt
|
||||
|
||||
### Run Your Caddy Container without the -d flag and Generate SSL with Let's Encrypt
|
||||
|
||||
```
|
||||
$root@server:~/laravel/laradock# docker-compose up caddy
|
||||
```
|
||||
|
||||
You'll be prompt here to enter your email... you may enter it or not
|
||||
|
||||
```
|
||||
Attaching to laradock_mysql_1, laradock_caddy_1
|
||||
caddy_1 | Activating privacy features...
|
||||
caddy_1 | Your sites will be served over HTTPS automatically using Let's Encrypt.
|
||||
caddy_1 | By continuing, you agree to the Let's Encrypt Subscriber Agreement at:
|
||||
caddy_1 | https://letsencrypt.org/documents/LE-SA-v1.0.1-July-27-2015.pdf
|
||||
caddy_1 | Activating privacy features... done.
|
||||
caddy_1 | https://yourdomain.com
|
||||
caddy_1 | http://yourdomain.com
|
||||
```
|
||||
|
||||
After it finishes, press `Ctrl` + `C` to exit.
|
||||
|
||||
### Stop All Containers and ReRun Caddy and Other Containers on Background
|
||||
|
||||
```
|
||||
$root@server:~/laravel/laradock# docker-compose down
|
||||
$root@server:~/laravel/laradock# docker-compose up -d mysql caddy
|
||||
```
|
||||
|
||||
View your Site in the Browser Securely Using HTTPS (https://yourdomain.com)
|
||||
|
||||
**Note that Certificate will be Automatically Renew By Caddy**
|
||||
|
||||
>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)
|
||||
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<a name="Laravel-Dusk"></a>
|
||||
## Running Laravel Dusk Tests
|
||||
|
||||
### 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)
|
||||
|
||||
#### 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.
|
||||
|
||||
#### 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
|
||||
```
|
||||
|
||||
#### 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
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### 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 Dusk 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 Dusk 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());
|
||||
}
|
||||
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
#### 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
|
||||
```
|
||||
|
||||
### 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)
|
||||
|
||||
#### 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.
|
||||
|
||||
#### 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.
|
||||
|
||||
#### 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.
|
||||
|
||||
#### 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()
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### 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/)
|
||||
|
||||
|
||||
<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)
|
||||
- [Usage](#Usage)
|
||||
- [Laravel](#UsageLaravel)
|
||||
- [Run ExampleTest](#UsagePHPStormRunExampleTest)
|
||||
- [Debug ExampleTest](#UsagePHPStormDebugExampleTest)
|
||||
- [Debug Web Site](#UsagePHPStormDebugSite)
|
||||
- [SSH into workspace](#SSHintoWorkspace)
|
||||
- [KiTTY](#InstallKiTTY)
|
||||
|
||||
### 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.
|
||||
|
||||
### 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`.
|
||||
|
||||
### 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`.
|
||||
- 
|
||||
|
||||
- [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).
|
||||
|
||||
|
||||
### 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.
|
||||
|
||||
- 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 ###############
|
||||
|
||||
workspace:
|
||||
build:
|
||||
context: ./workspace
|
||||
args:
|
||||
- INSTALL_XDEBUG=true
|
||||
- INSTALL_WORKSPACE_SSH=true
|
||||
...
|
||||
|
||||
|
||||
### PHP-FPM Container #####################
|
||||
|
||||
php-fpm:
|
||||
build:
|
||||
context: ./php-fpm
|
||||
args:
|
||||
- INSTALL_XDEBUG=true
|
||||
...
|
||||
|
||||
```
|
||||
|
||||
#### Edit xdebug.ini files
|
||||
- `laradock/workspace/xdebug.ini`
|
||||
- `laradock/php-fpm/xdebug.ini`
|
||||
|
||||
Set the following variables:
|
||||
|
||||
```
|
||||
xdebug.remote_autostart=1
|
||||
xdebug.remote_enable=1
|
||||
xdebug.remote_connect_back=1
|
||||
xdebug.cli_color=1
|
||||
```
|
||||
|
||||
|
||||
#### 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.
|
||||
|
||||
- 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 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" ]; then
|
||||
docker rm $processes
|
||||
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 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 'dcleanlaradock completed'
|
||||
}
|
||||
# associate the above function with an alias
|
||||
# so can recall/lookup by typing 'alias'
|
||||
alias dcleanlaradock=dcleanlaradockfunction
|
||||
```
|
||||
|
||||
|
||||
### Let's get a dial-tone with Laravel
|
||||
|
||||
```
|
||||
# barebones at this point
|
||||
docker-compose up -d nginx mysql
|
||||
|
||||
# run
|
||||
docker-compose ps
|
||||
|
||||
# Should see:
|
||||
Name Command State Ports
|
||||
-----------------------------------------------------------------------------------------------------------
|
||||
laradock_mysql_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp
|
||||
laradock_nginx_1 nginx Up 0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp
|
||||
laradock_php-fpm_1 php-fpm Up 9000/tcp
|
||||
laradock_volumes_data_1 true Exit 0
|
||||
laradock_volumes_source_1 true Exit 0
|
||||
laradock_workspace_1 /sbin/my_init Up 0.0.0.0:2222->22/tcp
|
||||
```
|
||||
|
||||
### 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:
|
||||
|
||||
```
|
||||
xDebug status
|
||||
laradock_php-fpm_1
|
||||
PHP 7.0.9 (cli) (built: Aug 10 2016 19:45:48) ( NTS )
|
||||
Copyright (c) 1997-2016 The PHP Group
|
||||
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
|
||||
with Xdebug v2.4.1, Copyright (c) 2002-2016, by Derick Rethans
|
||||
```
|
||||
|
||||
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.
|
||||
|
||||
|
||||
### PHPStorm Settings
|
||||
|
||||
- Here are some settings that are known to work:
|
||||
- `Settings/BuildDeploymentConnection`
|
||||
- 
|
||||
|
||||
- `Settings/BuildDeploymentConnectionMappings`
|
||||
- 
|
||||
|
||||
- `Settings/BuildDeploymentDebugger`
|
||||
- 
|
||||
|
||||
- `Settings/EditRunConfigurationRemoteWebDebug`
|
||||
- 
|
||||
|
||||
- `Settings/EditRunConfigurationRemoteExampleTestDebug`
|
||||
- 
|
||||
|
||||
- `Settings/LangsPHPDebug`
|
||||
- 
|
||||
|
||||
- `Settings/LangsPHPInterpreters`
|
||||
- 
|
||||
|
||||
- `Settings/LangsPHPPHPUnit`
|
||||
- 
|
||||
|
||||
- `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)
|
||||
|
||||
|
||||
|
||||
### Usage
|
||||
|
||||
#### 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!
|
||||
|
||||
#### 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!
|
||||
- 
|
||||
|
||||
#### 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`
|
||||
|
||||
- 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!
|
||||
- 
|
||||
|
||||
|
||||
### Let's shell into workspace
|
||||
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`
|
||||
|
||||
#### 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="Setup remote debugging (PhpStorm)"></a>
|
||||
## Setup remote debugging for PhpStorm on Linux
|
||||
|
||||
- Make sure you have followed the steps above in the [Install Xdebug section](#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 !
|
127
DOCUMENTATION/content/help/index.md
Normal file
@ -0,0 +1,127 @@
|
||||
---
|
||||
title: 5. Help & Questions
|
||||
type: index
|
||||
weight: 5
|
||||
---
|
||||
|
||||
Join the chat room on [Gitter](https://gitter.im/Laradock/laradock) and get help and support from the community.
|
||||
|
||||
You can as well can open an [issue](https://github.com/laradock/laradock/issues) on Github (will be labeled as Question) and discuss it with people on [Gitter](https://gitter.im/Laradock/laradock).
|
||||
|
||||
|
||||
<br>
|
||||
<a name="Common-Problems"></a>
|
||||
# Common Problems
|
||||
|
||||
*Here's a list of the common problems you might face, and the possible solutions.*
|
||||
|
||||
|
||||
<br>
|
||||
## I see a blank (white) page instead of the Laravel 'Welcome' page!
|
||||
|
||||
Run the following command from the Laravel root directory:
|
||||
|
||||
```bash
|
||||
sudo chmod -R 777 storage bootstrap/cache
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
## I see "Welcome to nginx" instead of the Laravel App!
|
||||
|
||||
Use `http://127.0.0.1` instead of `http://localhost` in your browser.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
## I see an error message containing `address already in use` or `port is already allocated`
|
||||
|
||||
Make sure the ports for the services that you are trying to run (22, 80, 443, 3306, etc.) are not being used already by other programs on the host, such as a built in `apache`/`httpd` service or other development tools you have installed.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
## I get NGINX error 404 Not Found on Windows.
|
||||
|
||||
1. Go to docker Settings on your Windows machine.
|
||||
2. Click on the `Shared Drives` tab and check the drive that contains your project files.
|
||||
3. Enter your windows username and password.
|
||||
4. Go to the `reset` tab and click restart docker.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
## The time in my services does not match the current time
|
||||
|
||||
1. Make sure you've [changed the timezone](#Change-the-timezone).
|
||||
2. Stop and rebuild the containers (`docker-compose up -d --build <services>`)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<br>
|
||||
## I get MySQL connection refused
|
||||
|
||||
This error sometimes happens because your Laravel application isn't running on the container localhost IP (Which is 127.0.0.1). Steps to fix it:
|
||||
|
||||
* Option A
|
||||
1. Check your running Laravel application IP by dumping `Request::ip()` variable using `dd(Request::ip())` anywhere on your application. The result is the IP of your Laravel container.
|
||||
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-419652646), Already fixed,just set `CHANGE_SOURCE` to false.
|
||||
|
||||
## 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
|
||||
```
|
||||
|
||||
<br>
|
||||
|
||||
## I get `Module build failed: Error: write EPIPE` while compiling react application
|
||||
|
||||
When you run `npm build` or `yarn dev` building a react application using webpack with elixir you may receive a `Error: write EPIPE` while processing .jpg images.
|
||||
|
||||
This is caused of an outdated library for processing **.jpg files** in ubuntu 16.04.
|
||||
|
||||
To fix the problem you can follow those steps
|
||||
|
||||
1 - Open the `.env`.
|
||||
|
||||
2 - Search for `WORKSPACE_INSTALL_LIBPNG` or add the key if missing.
|
||||
|
||||
3 - Set the value to true:
|
||||
|
||||
```dotenv
|
||||
WORKSPACE_INSTALL_LIBPNG=true
|
||||
```
|
||||
|
||||
4 - Finally rebuild the workspace image
|
||||
|
||||
```bash
|
||||
docker-compose build workspace
|
||||
```
|
||||
|
425
DOCUMENTATION/content/introduction/index.md
Normal file
@ -0,0 +1,425 @@
|
||||
---
|
||||
title: 1. Introduction
|
||||
type: index
|
||||
weight: 1
|
||||
---
|
||||
|
||||
<b>Laradock is a full PHP development environment based on Docker.</b>
|
||||
|
||||
Supporting a variety of common services, all pre-configured to provide a full PHP development environment.
|
||||
|
||||
|
||||
<a name="features"></a>
|
||||
## Features
|
||||
|
||||
- Easy switch between PHP versions: 7.4, 7.3, 7.2, 7.1, 5.6...
|
||||
- Choose your favorite database engine: MySQL, Postgres, MariaDB...
|
||||
- Run your own stack: Memcached, HHVM, RabbitMQ...
|
||||
- Each software runs on its own container: PHP-FPM, NGINX, PHP-CLI...
|
||||
- Easy to customize any container, with simple edit to the `Dockerfile`.
|
||||
- All Images extends from an official base Image. (Trusted base Images).
|
||||
- Pre-configured NGINX to host any code at your root directory.
|
||||
- Can use Laradock per project, or single Laradock for all projects.
|
||||
- Easy to install/remove software's in Containers using environment variables.
|
||||
- Clean and well structured Dockerfiles (`Dockerfile`).
|
||||
- Latest version of the Docker Compose file (`docker-compose`).
|
||||
- Everything is visible and editable.
|
||||
- Fast Images Builds.
|
||||
|
||||
<br>
|
||||
|
||||
---
|
||||
### Use Docker First - Then Learn About It Later</q>
|
||||
---
|
||||
|
||||
|
||||
<a name="sponsors"></a>
|
||||
## Sponsors
|
||||
|
||||
<a href="https://opencollective.com/laradock/sponsor/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/0/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/1/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/2/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/2/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/3/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/3/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/4/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/4/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/5/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/5/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/6/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/6/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/7/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/7/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/8/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/8/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/9/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/9/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/10/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/10/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/11/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/11/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/12/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/12/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/13/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/13/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/14/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/14/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/15/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/15/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/16/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/16/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/17/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/17/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/18/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/18/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/19/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/19/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/20/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/20/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/21/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/21/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/22/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/22/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/23/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/23/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/24/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/24/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/25/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/25/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/26/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/26/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/27/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/27/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/28/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/28/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/29/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/29/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/30/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/30/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/31/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/31/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/32/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/32/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/33/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/33/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/34/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/34/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/35/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/35/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/36/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/36/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/37/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/37/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/38/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/38/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/39/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/39/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/40/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/40/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/41/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/41/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/42/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/42/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/43/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/43/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/44/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/44/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/45/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/45/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/46/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/46/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/47/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/47/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/48/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/48/avatar.svg?requireActive=false"></a>
|
||||
<a href="https://opencollective.com/laradock/sponsor/49/website?requireActive=false" target="_blank"><img src="https://opencollective.com/laradock/sponsor/49/avatar.svg?requireActive=false"></a>
|
||||
|
||||
Support Laradock with your [organization](https://opencollective.com/laradock/contribute/).
|
||||
<br>
|
||||
Your logo will show up on the [github repository](https://github.com/laradock/laradock/) index page and the [documentation](http://laradock.io/) main page.
|
||||
<br>
|
||||
For more info contact <a href = "mailto: support@laradock.io">support@laradock.io</a>.
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
## Quick Overview
|
||||
|
||||
Let's see how easy it is to setup our demo stack `PHP`, `NGINX`, `MySQL`, `Redis` and `Composer`:
|
||||
|
||||
1 - Clone Laradock inside your PHP project:
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Laradock/laradock.git
|
||||
```
|
||||
|
||||
2 - Enter the laradock folder and rename `env-example` to `.env`.
|
||||
|
||||
```shell
|
||||
cp env-example .env
|
||||
```
|
||||
|
||||
3 - Run your containers:
|
||||
|
||||
```shell
|
||||
docker-compose up -d nginx mysql phpmyadmin redis workspace
|
||||
```
|
||||
|
||||
4 - Open your project's `.env` file and set the following:
|
||||
|
||||
```shell
|
||||
DB_HOST=mysql
|
||||
REDIS_HOST=redis
|
||||
QUEUE_HOST=beanstalkd
|
||||
```
|
||||
|
||||
5 - Open your browser and visit localhost: `http://localhost`.
|
||||
|
||||
```shell
|
||||
That's it! enjoy :)
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="Supported-Containers"></a>
|
||||
## Supported Software (Docker Images)
|
||||
|
||||
> Laradock, adheres to the 'separation of concerns' principle, thus it runs each software on its own Docker Container.
|
||||
> You can turn On/Off as many instances as you want without worrying about the configurations.
|
||||
|
||||
> To run a chosen container from the list below, run `docker-compose up -d {container-name}`.
|
||||
> The container name `{container-name}` is the same as its folder name. Example to run the "PHP FPM" container use the name "php-fpm".
|
||||
|
||||
- **Web Servers:**
|
||||
- NGINX
|
||||
- Apache2
|
||||
- Caddy
|
||||
|
||||
- **Load Balancers:**
|
||||
- HAProxy
|
||||
- Traefik
|
||||
|
||||
- **PHP Compilers:**
|
||||
- PHP FPM
|
||||
- HHVM
|
||||
|
||||
- **Database Management Systems:**
|
||||
- MySQL
|
||||
- PostgreSQL
|
||||
- PostGIS
|
||||
- MariaDB
|
||||
- Percona
|
||||
- MSSQL
|
||||
- MongoDB
|
||||
- MongoDB Web UI
|
||||
- Neo4j
|
||||
- CouchDB
|
||||
- RethinkDB
|
||||
- Cassandra
|
||||
|
||||
|
||||
- **Database Management Apps:**
|
||||
- PhpMyAdmin
|
||||
- Adminer
|
||||
- PgAdmin
|
||||
|
||||
- **Cache Engines:**
|
||||
- Redis
|
||||
- Redis Web UI
|
||||
- Redis Cluster
|
||||
- Memcached
|
||||
- Aerospike
|
||||
- Varnish
|
||||
|
||||
- **Message Brokers:**
|
||||
- RabbitMQ
|
||||
- RabbitMQ Admin Console
|
||||
- Beanstalkd
|
||||
- Beanstalkd Admin Console
|
||||
- Eclipse Mosquitto
|
||||
- PHP Worker
|
||||
- Laravel Horizon
|
||||
- Gearman
|
||||
|
||||
- **Mail Servers:**
|
||||
- Mailu
|
||||
- Mailhog
|
||||
- MailDev
|
||||
|
||||
- **Log Management:**
|
||||
- GrayLog
|
||||
|
||||
- **Testing:**
|
||||
- Selenium
|
||||
|
||||
- **Monitoring:**
|
||||
- Grafana
|
||||
- NetData
|
||||
|
||||
- **Search Engines:**
|
||||
- ElasticSearch
|
||||
- Apache Solr
|
||||
- Manticore Search
|
||||
|
||||
- **IDE's**
|
||||
- ICE Coder
|
||||
- Theia
|
||||
- Web IDE
|
||||
|
||||
- **Miscellaneous:**
|
||||
- Workspace *(Laradock container that includes a rich set of pre-configured useful tools)*
|
||||
- `PHP CLI`
|
||||
- `Composer`
|
||||
- `Git`
|
||||
- `Vim`
|
||||
- `xDebug`
|
||||
- `Linuxbrew`
|
||||
- `Node`
|
||||
- `V8JS`
|
||||
- `Gulp`
|
||||
- `SQLite`
|
||||
- `Laravel Envoy`
|
||||
- `Deployer`
|
||||
- `Yarn`
|
||||
- `SOAP`
|
||||
- `Drush`
|
||||
- `Wordpress CLI`
|
||||
- Apache ZooKeeper *(Centralized service for distributed systems to a hierarchical key-value store)*
|
||||
- Kibana *(Visualize your Elasticsearch data and navigate the Elastic Stack)*
|
||||
- LogStash *(Server-side data processing pipeline that ingests data from a multitude of sources simultaneously)*
|
||||
- Jenkins *(automation server, that provides plugins to support building, deploying and automating any project)*
|
||||
- Certbot *(Automatically enable HTTPS on your website)*
|
||||
- Swoole *(Production-Grade Async programming Framework for PHP)*
|
||||
- SonarQube *(continuous inspection of code quality to perform automatic reviews with static analysis of code to detect bugs and more)*
|
||||
- Gitlab *(A single application for the entire software development lifecycle)*
|
||||
- PostGIS *(Database extender for PostgreSQL. It adds support for geographic objects allowing location queries to be run in SQL)*
|
||||
- Blackfire *(Empowers all PHP developers and IT/Ops to continuously verify and improve their app's performance)*
|
||||
- Laravel Echo *(Bring the power of WebSockets to your Laravel applications)*
|
||||
- Phalcon *(A PHP web framework based on the model–view–controller pattern)*
|
||||
- Minio *(Cloud storage server released under Apache License v2, compatible with Amazon S3)*
|
||||
- AWS EB CLI *(CLI that helps you deploy and manage your AWS Elastic Beanstalk applications and environments)*
|
||||
- Thumbor *(Photo thumbnail service)*
|
||||
- IPython *(Provides a rich architecture for interactive computing)*
|
||||
- Jupyter Hub *(Jupyter notebook for multiple users)*
|
||||
- Portainer *(Build and manage your Docker environments with ease)*
|
||||
- Docker Registry *(The Docker Registry implementation for storing and distributing Docker images)*
|
||||
- Docker Web UI *(A browser-based solution for browsing and modifying a private Docker registry)*
|
||||
|
||||
You can choose, which tools to install in your workspace container and other containers, from the `.env` file.
|
||||
|
||||
|
||||
> If you modify `docker-compose.yml`, `.env` or any `dockerfile` file, you must re-build your containers, to see those effects in the running instance.
|
||||
|
||||
|
||||
|
||||
*If you can't find your Software in the list, build it yourself and submit it. Contributions are welcomed :)*
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
<a name="Chat"></a>
|
||||
## Chat with us
|
||||
|
||||
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)
|
||||
|
||||
---
|
||||
|
||||
Laradock exists thanks to all the people who contribute.
|
||||
|
||||
## Project Maintainers
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/mahmoudz.png?s=150">
|
||||
<br>
|
||||
<strong>Mahmoud Zalt</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@mahmoudz</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/appleboy.png?s=150">
|
||||
<br>
|
||||
<strong>Bo-Yi Wu</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@appleboy</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/philtrep.png?s=150">
|
||||
<br>
|
||||
<strong>Philippe Trépanier</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@philtrep</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/mikeerickson.png?s=150">
|
||||
<br>
|
||||
<strong>Mike Erickson</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@mikeerickson</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/zeroc0d3.png?s=150">
|
||||
<br>
|
||||
<strong>Dwi Fahni Denni</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@zeroc0d3</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/thorerik.png?s=150">
|
||||
<br>
|
||||
<strong>Thor Erik</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@thorerik</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/winfried-van-loon.png?s=150">
|
||||
<br>
|
||||
<strong>Winfried van Loon</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@winfried-van-loon</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/sixlive.png?s=150">
|
||||
<br>
|
||||
<strong>TJ Miller</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@sixlive</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/bestlong.png?s=150">
|
||||
<br>
|
||||
<strong>Yu-Lung Shao (Allen)</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@bestlong</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/urukalo.png?s=150">
|
||||
<br>
|
||||
<strong>Milan Urukalo</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@urukalo</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/vwchu.png?s=150">
|
||||
<br>
|
||||
<strong>Vince Chu</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@vwchu</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/zuohuadong.png?s=150">
|
||||
<br>
|
||||
<strong>Huadong Zuo</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@zuohuadong</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/lanphan.png?s=150">
|
||||
<br>
|
||||
<strong>Lan Phan</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@lanphan</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://github.com/ahkui.png?s=150">
|
||||
<br>
|
||||
<strong>Ahkui</strong>
|
||||
<br>
|
||||
<a href="https://github.com/Mahmoudz">@ahkui</a>
|
||||
</td>
|
||||
<td align="center" valign="top">
|
||||
<img width="125" height="125" src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/join-us.png">
|
||||
<br>
|
||||
<strong>< Join Us ></strong>
|
||||
<br>
|
||||
<a href="https://github.com/laradock">@laradock</a>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
## Code Contributors
|
||||
|
||||
<a href="https://github.com/undefined/undefined/graphs/contributors"><img src="https://opencollective.com/laradock/contributors.svg?width=890&button=false" /></a>
|
||||
|
||||
---
|
||||
|
||||
<a name="Donations"></a>
|
||||
## Financial Contributors
|
||||
|
||||
Contribute and help us sustain the project.
|
||||
|
||||
<b>Option 1:</b> Donate directly to [Paypal](https://paypal.me/mzmmzz).
|
||||
|
||||
[](https://paypal.me/mzmmzz)
|
||||
|
||||
<b>Option 2:</b> Support us via [BeerPay](https://beerpay.io/laradock/laradock).
|
||||
|
||||
[](https://beerpay.io/laradock/laradock)
|
||||
|
||||
<b>Option 3:</b> Become a backer on [Open Collective](https://opencollective.com/laradock/contribute).
|
||||
|
||||
<a href="https://opencollective.com/laradock"><img src="https://opencollective.com/laradock/backer.svg?width=890"></a>
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
title: License
|
||||
title: 8. License
|
||||
type: index
|
||||
weight: 7
|
||||
weight: 8
|
||||
---
|
||||
|
||||
[MIT License](https://github.com/laradock/laradock/blob/master/LICENSE) (MIT)
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Related Projects
|
||||
title: 6. Related Projects
|
||||
type: index
|
||||
weight: 4
|
||||
weight: 6
|
||||
---
|
||||
|
||||
Laradock related projects:
|
||||
@ -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.
|
1
DOCUMENTATION/static/ads.txt
Normal file
@ -0,0 +1 @@
|
||||
google.com, pub-9826129398689742, DIRECT, f08c47fec0942fa0
|
30
DOCUMENTATION/static/custom-style.css
Normal file
@ -0,0 +1,30 @@
|
||||
/* Custom CSS */
|
||||
|
||||
.article a {
|
||||
border-bottom: none;
|
||||
}
|
||||
.project .logo {
|
||||
width: 200px;
|
||||
padding-right: 0;
|
||||
}
|
||||
.project .banner {
|
||||
height: 70px;
|
||||
padding: 25px;
|
||||
}
|
||||
.palette-primary-deep-purple .article h1{
|
||||
color: #7e57c2;
|
||||
font-size: 35px;
|
||||
}
|
||||
.palette-primary-deep-purple .article h2{
|
||||
|
||||
color: #ce2046;
|
||||
font-size: 25px;
|
||||
}
|
||||
.palette-primary-deep-purple .article h3{
|
||||
color: #851d54;
|
||||
font-size: 18px;
|
||||
}
|
||||
.palette-primary-deep-purple .article code{
|
||||
color: #851d54;
|
||||
background: #eeeeeea8;
|
||||
}
|
@ -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 }}
|
||||
|
@ -1,8 +1,8 @@
|
||||
{{ partial "head" . }}
|
||||
|
||||
{{ if (eq (trim .Site.Params.provider " " | lower) "github") | and (isset .Site.Params "repo_url") }}
|
||||
{{ $repo_id := replace .Site.Params.repo_url "https://github.com/" ""}}
|
||||
{{ .Scratch.Set "repo_id" $repo_id }}
|
||||
{{ $repo_id := replace .Site.Params.repo_url "https://github.com/" ""}}
|
||||
{{ .Scratch.Set "repo_id" $repo_id }}
|
||||
{{ end }}
|
||||
|
||||
<div class="backdrop">
|
||||
@ -24,10 +24,33 @@
|
||||
|
||||
<article class="article">
|
||||
<div class="wrapper">
|
||||
{{ range where .Site.Pages "Type" "index" }}
|
||||
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1>
|
||||
|
||||
{{ .Content }}
|
||||
<!-- Wrapper arround google ads for seedanddew -->
|
||||
<div class='snd-ad'>
|
||||
<!-- ------------------------------------------------------------------------- -->
|
||||
<!-- 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>
|
||||
<!-- ------------------------------------------------------------------------- -->
|
||||
</div>
|
||||
|
||||
<br><br><br>
|
||||
<img src="https://raw.githubusercontent.com/laradock/laradock/master/.github/home-page-images/laradock-logo.jpg" alt="laradock logo">
|
||||
|
||||
{{ range where .Site.Pages "Type" "index" }}
|
||||
<br><br><br><br><br><br>
|
||||
<hr>
|
||||
<br>
|
||||
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1>
|
||||
|
||||
{{ .Content }}
|
||||
{{ end }}
|
||||
|
||||
<aside class="copyright" role="note">
|
||||
@ -38,8 +61,8 @@
|
||||
<a href="https://www.gohugo.io" target="_blank">Hugo</a>
|
||||
using the
|
||||
<a href="http://github.com/digitalcraftsman/hugo-material-docs" target="_blank">Material</a> theme,
|
||||
by
|
||||
<a href="https://zalt.me">Mahmoud Zalt</a>.
|
||||
by
|
||||
<a href="https://zalt.me">Mahmoud Zalt</a>.
|
||||
</aside>
|
||||
|
||||
<footer class="footer">
|
@ -0,0 +1,101 @@
|
||||
<nav aria-label="Navigation">
|
||||
<a href="{{ with .Site.Params.repo_url }}{{ . }}{{ else }}{{ .Site.BaseURL }}{{ end }}" class="project">
|
||||
<div class="banner">
|
||||
{{ with .Site.Params.logo }}
|
||||
<div class="logo">
|
||||
<img src="{{ $.Site.BaseURL }}{{ . }}">
|
||||
</div>
|
||||
|
||||
{{ end }}
|
||||
<!--<div class="name">-->
|
||||
<!--<strong>{{ .Site.Title }} {{ with .Site.Params.version }}<span class="version">{{ . }}</span>{{ end }}</strong>-->
|
||||
<!--{{ with .Scratch.Get "repo_id" }}-->
|
||||
<!--<br>-->
|
||||
<!--{{ . }}-->
|
||||
<!--{{ end }}-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
</a>
|
||||
|
||||
<div class="scrollable">
|
||||
<div class="wrapper">
|
||||
{{ if (eq (trim .Site.Params.provider " " | lower) "github") | and (isset .Site.Params "repo_url") }}
|
||||
<ul class="repo">
|
||||
<li class="repo-download">
|
||||
<a href="{{ .Site.Params.repo_url }}/archive/master.zip" target="_blank" title="Download" data-action="download">
|
||||
<i class="icon icon-download"></i> Download
|
||||
</a>
|
||||
</li>
|
||||
<li class="repo-stars">
|
||||
<a href="{{ .Site.Params.repo_url }}/stargazers" target="_blank" title="Stargazers" data-action="star">
|
||||
<i class="icon icon-star"></i> Stars
|
||||
<span class="count">–</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<hr>
|
||||
{{ end }}
|
||||
|
||||
<div class="toc">
|
||||
{{ if gt (len .Site.Menus.main) 0 }}
|
||||
<ul>
|
||||
{{ partial "nav" . }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
|
||||
|
||||
<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 }}-->
|
||||
|
||||
<!--{{ with .Site.Social.github }}-->
|
||||
<!--<li>-->
|
||||
<!--<a href="https://github.com/{{ . }}" target="_blank" title="@{{ . }} on GitHub">-->
|
||||
<!--@{{ . }} on GitHub-->
|
||||
<!--</a>-->
|
||||
<!--</li>-->
|
||||
<!--{{ end }}-->
|
||||
|
||||
<!--{{ with .Site.Social.email }}-->
|
||||
<!--<li>-->
|
||||
<!--<a href="mailto:{{ . }}" title="Email of {{ . }}">-->
|
||||
<!--Contact via email-->
|
||||
<!--</a>-->
|
||||
<!--</li>-->
|
||||
<!--{{ end }}-->
|
||||
<!--</ul>-->
|
||||
<!--{{ end }}-->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
@ -70,6 +70,27 @@
|
||||
{{ end }}
|
||||
<script src="{{ "javascripts/modernizr.js" | absURL }}"></script>
|
||||
|
||||
<script>
|
||||
// ------------------------------------------------------------
|
||||
// seedanddew.com integration
|
||||
var SeedAndDewConfig = {};
|
||||
(function() {
|
||||
SeedAndDewConfig['adClass'] = "snd-ad";
|
||||
/* * * DON'T EDIT BELOW THIS LINE * * */
|
||||
SeedAndDewConfig['projectId'] = 'd69f3ea2-1e30-44c7-bd2a-87686c0136e6';
|
||||
SeedAndDewConfig['loadStartTime'] = performance.now();
|
||||
SeedAndDewConfig['apiVersion'] = '2018-05-28'
|
||||
SeedAndDewConfig['sessionId'] = Math.random().toString(36).substring(2, 15);
|
||||
var snd = document.createElement('script');
|
||||
snd.type = 'text/javascript';
|
||||
snd.async = true;
|
||||
snd.src = 'https://www.seedanddew.com/static/embed.min.js';
|
||||
(document.getElementsByTagName('head')[0] ||
|
||||
document.getElementsByTagName('body')[0]).appendChild(snd);
|
||||
})();
|
||||
// ------------------------------------------------------------
|
||||
</script>
|
||||
|
||||
{{ with .RSSLink }}
|
||||
<link href="{{ . }}" rel="alternate" type="application/rss+xml" title="{{ $.Site.Title }}" />
|
||||
<link href="{{ . }}" rel="feed" type="application/rss+xml" title="{{ $.Site.Title }}" />
|
@ -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
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
BIN
DOCUMENTATION/themes/hugo-material-docs/static/images/logo.png
Normal file
After Width: | Height: | Size: 142 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 74 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 80 KiB |
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 43 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.5 KiB |
After Width: | Height: | Size: 85 KiB |
After Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
@ -3,7 +3,7 @@
|
||||
* theme that is used as fallback in codeblocks
|
||||
*/
|
||||
.article pre code {
|
||||
color: rgba(0, 0, 0, 0.8) !important;
|
||||
color: rgba(0, 0, 0, 0.78) !important;
|
||||
}
|
||||
|
||||
|
||||
@ -103,3 +103,22 @@ font-style:italic;
|
||||
.hljs-strong {
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
/*
|
||||
OVERRIDING THE DEFAULT STYLES - By Mahmoud Zalt (mahmoud@zalt.me) for Laradock.io
|
||||
*/
|
||||
|
||||
|
||||
.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;
|
||||
}
|
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.
|
||||
|