Advertisement
Guest User

Untitled

a guest
Jul 26th, 2017
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.30 KB | None | 0 0
  1. networks:
  2. backend:
  3. driver: bridge
  4. physical:
  5. external: true
  6. services:
  7. nextcloud-app:
  8. container_name: nextcloud-app
  9. depends_on:
  10. - nextcloud-db
  11. environment:
  12. - UID=1031
  13. - GID=1031
  14. - UPLOAD_MAX_SIZE=10G
  15. - APC_SHM_SIZE=128M
  16. - OPCACHE_MEM_SIZE=128
  17. - CRON_PERIOD=15m
  18. - TZ=(redacted)
  19. - ADMIN_USER
  20. - ADMIN_PASSWORD
  21. - DOMAIN=(redacted)
  22. - DB_TYPE=mysql
  23. - DB_NAME=(redacted)
  24. - DB_USER=(redacted)
  25. - DB_PASSWORD=(redacted)
  26. - DB_HOST=nextcloud-db
  27. image: wonderfall/nextcloud:latest
  28. networks:
  29. backend: null
  30. restart: unless-stopped
  31. volumes:
  32. - nextcloud_apps:/apps2
  33. - nextcloud_config:/config
  34. - nextcloud_data:/data
  35. - nextcloud_themes:/nextcloud/themes
  36. nextcloud-db:
  37. container_name: nextcloud-db
  38. environment:
  39. - MYSQL_ROOT_PASSWORD=(redacted)
  40. - MYSQL_DATABASE=(redacted)
  41. - MYSQL_USER=(redacted)
  42. - MYSQL_PASSWORD=(redacted)
  43. image: mariadb:10
  44. networks:
  45. backend: null
  46. restart: unless-stopped
  47. volumes:
  48. - nextcloud_db:/var/lib/mysql
  49. nextcloud-web:
  50. container_name: nextcloud-web
  51. depends_on:
  52. - nextcloud-app
  53. image: nginx
  54. networks:
  55. backend: null
  56. physical:
  57. ipv4_address: 192.168.1.10
  58. restart: unless-stopped
  59. volumes:
  60. - nextcloud_proxy_config:/etc/nginx/conf.d
  61. - nextcloud_proxy_ssl:/certs
  62. version: '3.0'
  63. volumes:
  64. nextcloud_apps:
  65. external: true
  66. nextcloud_config:
  67. external: true
  68. nextcloud_data:
  69. external: true
  70. nextcloud_db:
  71. external: true
  72. nextcloud_proxy_config:
  73. external: true
  74. nextcloud_proxy_ssl:
  75. external: true
  76. nextcloud_themes:
  77. external: true
  78.  
  79. server {
  80. listen 80;
  81. server_name (redacted);
  82. return 301 https://$host$request_uri;
  83. }
  84.  
  85. server {
  86. listen 443 ssl http2;
  87. server_name (redacted);
  88.  
  89. client_max_body_size 10G;
  90.  
  91. ssl_certificate /certs/server.crt;
  92. ssl_certificate_key /certs/server.key
  93.  
  94. location / {
  95. proxy_pass http://nextcloud-app:8888;
  96. proxy_set_header Host $host;
  97. proxy_set_header X-Real-IP $remote_addr;
  98. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  99. proxy_set_header X-Remote-Port $remote_port;
  100. proxy_set_header X-Forwarded-Proto $scheme;
  101. proxy_redirect off;
  102. }
  103. }
  104.  
  105. $ docker network inspect physical
  106. [
  107. {
  108. "Name": "physical",
  109. "Id": "999be40dea19b51fbeb3bda5501288f52365aa2ce155b5a5fedede3270fdf959",
  110. "Created": "2017-04-12T00:45:37.306899171-07:00",
  111. "Scope": "local",
  112. "Driver": "macvlan",
  113. "EnableIPv6": false,
  114. "IPAM": {
  115. "Driver": "default",
  116. "Options": {},
  117. "Config": [
  118. {
  119. "Subnet": "192.168.1.0/24",
  120. "Gateway": "192.168.1.254"
  121. }
  122. ]
  123. },
  124. "Internal": false,
  125. "Attachable": false,
  126. "Containers": {
  127. "92f04d62dfd43c5b9bb6ef290186bd5f7926b82d8232ee1bd6e488694d086240": {
  128. "Name": "(redacted)",
  129. "EndpointID": "c547179a88c11681d9abd83f020a92b1a1f341575d12423a7e0e5f3efe1d9a40",
  130. "MacAddress": "(redacted)",
  131. "IPv4Address": "192.168.1.9/24",
  132. "IPv6Address": ""
  133. },
  134. "cd14e07bbf7435274610ff10ec2a16035df71440772ab63f8e4973599d809b60": {
  135. "Name": "nextcloud-web",
  136. "EndpointID": "57e86f161ea2d578aadb6b99bfabe6da6dcdf2070ff91bfd30c0f450b076bc63",
  137. "MacAddress": "(redacted)",
  138. "IPv4Address": "192.168.1.10/24",
  139. "IPv6Address": ""
  140. }
  141. },
  142. "Options": {
  143. "parent": "eno1"
  144. },
  145. "Labels": {}
  146. }
  147. ]
  148.  
  149. ### mysql ###
  150. docker run
  151. -d
  152. --name mysql
  153. --network=host
  154. --restart=always
  155. -e MYSQL_ROOT_PASSWORD=redacted
  156. -v /home/redacted/docker/mysql/:/var/lib/mysql/
  157. mysql
  158.  
  159. docker exec -it mysql mysql -u root -p
  160. create database nextcloud;
  161. grant all privileges on nextcloud.* to nextcloud@'172.17.0.%' identified by 'nextcloud' with grant option;
  162. flush privileges;
  163.  
  164. ### nextcloud ###
  165. docker run
  166. -d
  167. --name nextcloud
  168. -p 8000:80
  169. -p 8001:443
  170. --restart=always
  171. -e PUID=1000
  172. -e PGID=1000
  173. -e TZ=/etc/localtime:ro
  174. -e VIRTUAL_HOST=cloud.hostname.com
  175. -e LETSENCRYPT_HOST=cloud.hostname.com
  176. -e LETSENCRYPT_EMAIL=me@hostname.com
  177. -v /home/redacted/docker/nextcloud:/var/www/html
  178. nextcloud
  179.  
  180. ### nginx-proxy ###
  181. docker run
  182. -d
  183. -p 80:80
  184. -p 443:443
  185. --name nginx-proxy
  186. --restart=always
  187. -v /home/redacted/docker/nginx-proxy/certs:/etc/nginx/certs:ro
  188. -v /home/redacted/docker/nginx-proxy/vhost.d:/etc/nginx/vhost.d
  189. -v /home/redacted/docker/nginx-proxy/html:/usr/share/nginx/html
  190. -v /var/run/docker.sock:/tmp/docker.sock:ro
  191. jwilder/nginx-proxy
  192.  
  193. ### letsencrypt ###
  194. docker run
  195. -d
  196. --name=nginx-letsencrypt
  197. --volumes-from nginx-proxy
  198. --restart=always
  199. -v /home/redacted/docker/nginx-proxy/certs:/etc/nginx/certs:rw
  200. -v /var/run/docker.sock:/var/run/docker.sock:ro
  201. jrcs/letsencrypt-nginx-proxy-companion
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement