You've already forked dockerfiles
							
							
				mirror of
				https://github.com/vimagick/dockerfiles.git
				synced 2025-10-30 23:47:48 +02:00 
			
		
		
		
	update
This commit is contained in:
		| @@ -2,8 +2,8 @@ | ||||
| # Dockerfile for ffmpeg | ||||
| # | ||||
|  | ||||
| FROM alpine | ||||
| MAINTAINER kev <noreply@easypi.pro> | ||||
| FROM alpine:3 | ||||
| MAINTAINER EasyPi Software Foundation | ||||
|  | ||||
| RUN apk add --no-cache ffmpeg | ||||
|  | ||||
|   | ||||
| @@ -2,7 +2,7 @@ | ||||
| # Dockerfile for ffmpeg-arm | ||||
| # | ||||
|  | ||||
| FROM arm32v7/alpine:3 | ||||
| FROM alpine:3 | ||||
| MAINTAINER EasyPi Software Foundation | ||||
|  | ||||
| RUN apk add --no-cache ffmpeg | ||||
|   | ||||
| @@ -7,16 +7,18 @@ MAINTAINER EasyPi Software Foundation | ||||
|  | ||||
| RUN set -xe \ | ||||
|     && apk add -U build-base \ | ||||
|                   curl \ | ||||
|                   gmp \ | ||||
|                   gmp-dev \ | ||||
|                   libstdc++ \ | ||||
|                   python \ | ||||
|                   python-dev \ | ||||
|                   py-pip \ | ||||
|                   python2 \ | ||||
|                   python2-dev \ | ||||
|     && curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python \ | ||||
|     && pip install --no-cache-dir fteproxy \ | ||||
|     && apk del build-base \ | ||||
|                curl \ | ||||
|                gmp-dev \ | ||||
|                python-dev \ | ||||
|                python2-dev \ | ||||
|     && rm -rf /root/.cache /var/cache/apk/* | ||||
|  | ||||
| ENV MODE=server | ||||
|   | ||||
| @@ -7,16 +7,18 @@ MAINTAINER EasyPi Software Foundation | ||||
|  | ||||
| RUN set -xe \ | ||||
|     && apk add -U build-base \ | ||||
|                   curl \ | ||||
|                   gmp \ | ||||
|                   gmp-dev \ | ||||
|                   libstdc++ \ | ||||
|                   python \ | ||||
|                   python-dev \ | ||||
|                   py-pip \ | ||||
|                   python2 \ | ||||
|                   python2-dev \ | ||||
|     && curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python \ | ||||
|     && pip install --no-cache-dir fteproxy \ | ||||
|     && apk del build-base \ | ||||
|                curl \ | ||||
|                gmp-dev \ | ||||
|                python-dev \ | ||||
|                python2-dev \ | ||||
|     && rm -rf /root/.cache /var/cache/apk/* | ||||
|  | ||||
| ENV MODE=server | ||||
|   | ||||
| @@ -6,8 +6,12 @@ FROM alpine:3 | ||||
|  | ||||
| MAINTAINER EasyPi Software Foundation | ||||
|  | ||||
| RUN apk add --no-cache icecast | ||||
| RUN set -xe \ | ||||
|  && apk add --no-cache icecast \ | ||||
|  && mkdir -p /etc/icecast \ | ||||
|  && mv /etc/icecast.xml /etc/icecast \ | ||||
|  && icecast --version | ||||
|  | ||||
| EXPOSE 8000 | ||||
|  | ||||
| CMD ["icecast", "-c", "/etc/icecast.xml"] | ||||
| CMD ["icecast", "-c", "/etc/icecast/icecast.xml"] | ||||
|   | ||||
| @@ -7,16 +7,25 @@ by the Xiph.org Foundation. | ||||
| ## docker-compose.yml | ||||
|  | ||||
| ```yaml | ||||
| icecast: | ||||
|   image: vimagick/icecast | ||||
|   ports: | ||||
|     - "8000:8000" | ||||
|   restart: always | ||||
| version: "3.8" | ||||
| services: | ||||
|   icecast: | ||||
|     image: vimagick/icecast | ||||
|     ports: | ||||
|       - "8000:8000" | ||||
|     volumes: | ||||
|       # ./data/etc:/etc/icecast:ro | ||||
|       - ./data/log:/var/log/icecast:rw | ||||
|     restart: unless-stopped | ||||
| ``` | ||||
|  | ||||
| > You can mount custom config file: [icecast.xml][2] | ||||
|  | ||||
| ## Server Setup | ||||
|  | ||||
| ```bash | ||||
| $ mkdir -p data/{etc,log} | ||||
| $ chmod -R 777 data/log | ||||
| $ docker-compose up -d | ||||
| ``` | ||||
|  | ||||
| @@ -26,3 +35,4 @@ $ docker-compose up -d | ||||
| - MacOS: butt | ||||
|  | ||||
| [1]: http://icecast.org/ | ||||
| [2]: https://github.com/xiph/Icecast-Server/tree/master/conf | ||||
|   | ||||
| @@ -2,12 +2,16 @@ | ||||
| # Dockerfile for icecast-arm | ||||
| # | ||||
|  | ||||
| FROM arm32v7/alpine:3 | ||||
| FROM alpine:3 | ||||
|  | ||||
| MAINTAINER EasyPi Software Foundation | ||||
|  | ||||
| RUN apk add --no-cache icecast | ||||
| RUN set -xe \ | ||||
|  && apk add --no-cache icecast \ | ||||
|  && mkdir -p /etc/icecast \ | ||||
|  && mv /etc/icecast.xml /etc/icecast \ | ||||
|  && icecast --version | ||||
|  | ||||
| EXPOSE 8000 | ||||
|  | ||||
| CMD ["icecast", "-c", "/etc/icecast.xml"] | ||||
| CMD ["icecast", "-c", "/etc/icecast/icecast.xml"] | ||||
|   | ||||
| @@ -1,5 +1,10 @@ | ||||
| icecast: | ||||
|   image: easypi/icecast-arm | ||||
|   ports: | ||||
|     - "8000:8000" | ||||
|   restart: unless-stopped | ||||
| version: "3.8" | ||||
| services: | ||||
|   icecast: | ||||
|     image: vimagick/icecast-arm | ||||
|     ports: | ||||
|       - "8000:8000" | ||||
|     volumes: | ||||
|       # ./data/etc:/etc/icecast:ro | ||||
|       - ./data/log:/var/log/icecast:rw | ||||
|     restart: unless-stopped | ||||
|   | ||||
							
								
								
									
										242
									
								
								icecast/data/etc/icecast.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										242
									
								
								icecast/data/etc/icecast.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,242 @@ | ||||
| <icecast> | ||||
|     <!-- location and admin are two arbitrary strings that are e.g. visible | ||||
|          on the server info page of the icecast web interface | ||||
|          (server_version.xsl). --> | ||||
|     <location>Earth</location> | ||||
|     <admin>icemaster@localhost</admin> | ||||
|  | ||||
|     <!-- IMPORTANT! | ||||
|          Especially for inexperienced users: | ||||
|          Start out by ONLY changing all passwords and restarting Icecast. | ||||
|          For detailed setup instructions please refer to the documentation. | ||||
|          It's also available here: http://icecast.org/docs/ | ||||
|     --> | ||||
|  | ||||
|     <limits> | ||||
|         <clients>100</clients> | ||||
|         <sources>2</sources> | ||||
|         <queue-size>524288</queue-size> | ||||
|         <client-timeout>30</client-timeout> | ||||
|         <header-timeout>15</header-timeout> | ||||
|         <source-timeout>10</source-timeout> | ||||
|         <!-- If enabled, this will provide a burst of data when a client | ||||
|              first connects, thereby significantly reducing the startup | ||||
|              time for listeners that do substantial buffering. However, | ||||
|              it also significantly increases latency between the source | ||||
|              client and listening client.  For low-latency setups, you | ||||
|              might want to disable this. --> | ||||
|         <burst-on-connect>1</burst-on-connect> | ||||
|         <!-- same as burst-on-connect, but this allows for being more | ||||
|              specific on how much to burst. Most people won't need to | ||||
|              change from the default 64k. Applies to all mountpoints  --> | ||||
|         <burst-size>65535</burst-size> | ||||
|     </limits> | ||||
|  | ||||
|     <authentication> | ||||
|         <!-- Sources log in with username 'source' --> | ||||
|         <source-password>hackme</source-password> | ||||
|         <!-- Relays log in with username 'relay' --> | ||||
|         <relay-password>hackme</relay-password> | ||||
|  | ||||
|         <!-- Admin logs in with the username given below --> | ||||
|         <admin-user>admin</admin-user> | ||||
|         <admin-password>hackme</admin-password> | ||||
|     </authentication> | ||||
|  | ||||
|     <!-- set the mountpoint for a shoutcast source to use, the default if not | ||||
|          specified is /stream but you can change it here if an alternative is | ||||
|          wanted or an extension is required | ||||
|     <shoutcast-mount>/live.nsv</shoutcast-mount> | ||||
|     --> | ||||
|  | ||||
|     <!-- Uncomment this if you want directory listings --> | ||||
|     <!-- | ||||
|     <directory> | ||||
|         <yp-url-timeout>15</yp-url-timeout> | ||||
|         <yp-url>http://dir.xiph.org/cgi-bin/yp-cgi</yp-url> | ||||
|     </directory> | ||||
|     --> | ||||
|  | ||||
|     <!-- This is the hostname other people will use to connect to your server. | ||||
|          It affects mainly the urls generated by Icecast for playlists and yp | ||||
|          listings. You MUST configure it properly for YP listings to work! | ||||
|     --> | ||||
|     <hostname>localhost</hostname> | ||||
|  | ||||
|     <!-- You may have multiple <listen-socket> elements --> | ||||
|     <listen-socket> | ||||
|         <port>8000</port> | ||||
|         <!-- <bind-address>127.0.0.1</bind-address> --> | ||||
|         <!-- <shoutcast-mount>/stream</shoutcast-mount> --> | ||||
|     </listen-socket> | ||||
|     <!-- | ||||
|     <listen-socket> | ||||
|         <port>8080</port> | ||||
|     </listen-socket> | ||||
|     --> | ||||
|     <!-- | ||||
|     <listen-socket> | ||||
|         <port>8443</port> | ||||
|         <ssl>1</ssl> | ||||
|     </listen-socket> | ||||
|     --> | ||||
|  | ||||
|  | ||||
|     <!-- Global header settings | ||||
|          Headers defined here will be returned for every HTTP request to Icecast. | ||||
|  | ||||
|          The ACAO header makes Icecast public content/API by default | ||||
|          This will make streams easier embeddable (some HTML5 functionality needs it). | ||||
|          Also it allows direct access to e.g. /status-json.xsl from other sites. | ||||
|          If you don't want this, comment out the following line or read up on CORS. | ||||
|     --> | ||||
|     <http-headers> | ||||
|         <header name="Access-Control-Allow-Origin" value="*" /> | ||||
|     </http-headers> | ||||
|  | ||||
|  | ||||
|     <!-- Relaying | ||||
|          You don't need this if you only have one server. | ||||
|          Please refer to the documentation for a detailed explanation. | ||||
|     --> | ||||
|     <!--<master-server>127.0.0.1</master-server>--> | ||||
|     <!--<master-server-port>8001</master-server-port>--> | ||||
|     <!--<master-update-interval>120</master-update-interval>--> | ||||
|     <!--<master-password>hackme</master-password>--> | ||||
|  | ||||
|     <!-- setting this makes all relays on-demand unless overridden, this is | ||||
|          useful for master relays which do not have <relay> definitions here. | ||||
|          The default is 0 --> | ||||
|     <!--<relays-on-demand>1</relays-on-demand>--> | ||||
|  | ||||
|     <!-- | ||||
|     <relay> | ||||
|         <server>127.0.0.1</server> | ||||
|         <port>8080</port> | ||||
|         <mount>/example.ogg</mount> | ||||
|         <local-mount>/different.ogg</local-mount> | ||||
|         <on-demand>0</on-demand> | ||||
|  | ||||
|         <relay-shoutcast-metadata>0</relay-shoutcast-metadata> | ||||
|     </relay> | ||||
|     --> | ||||
|  | ||||
|  | ||||
|     <!-- Mountpoints | ||||
|          Only define <mount> sections if you want to use advanced options, | ||||
|          like alternative usernames or passwords | ||||
|     --> | ||||
|  | ||||
|     <!-- Default settings for all mounts that don't have a specific <mount type="normal">. | ||||
|     --> | ||||
|     <!-- | ||||
|     <mount type="default"> | ||||
|         <public>0</public> | ||||
|         <intro>/server-wide-intro.ogg</intro> | ||||
|         <max-listener-duration>3600</max-listener-duration> | ||||
|         <authentication type="url"> | ||||
|                 <option name="mount_add" value="http://auth.example.org/stream_start.php"/> | ||||
|         </authentication> | ||||
|         <http-headers> | ||||
|                 <header name="foo" value="bar" /> | ||||
|         </http-headers> | ||||
|     </mount> | ||||
|     --> | ||||
|  | ||||
|     <!-- Normal mounts --> | ||||
|     <!-- | ||||
|     <mount type="normal"> | ||||
|         <mount-name>/example-complex.ogg</mount-name> | ||||
|  | ||||
|         <username>othersource</username> | ||||
|         <password>hackmemore</password> | ||||
|  | ||||
|         <max-listeners>1</max-listeners> | ||||
|         <dump-file>/tmp/dump-example1.ogg</dump-file> | ||||
|         <burst-size>65536</burst-size> | ||||
|         <fallback-mount>/example2.ogg</fallback-mount> | ||||
|         <fallback-override>1</fallback-override> | ||||
|         <fallback-when-full>1</fallback-when-full> | ||||
|         <intro>/example_intro.ogg</intro> | ||||
|         <hidden>1</hidden> | ||||
|         <public>1</public> | ||||
|         <authentication type="htpasswd"> | ||||
|                 <option name="filename" value="myauth"/> | ||||
|                 <option name="allow_duplicate_users" value="0"/> | ||||
|         </authentication> | ||||
|         <http-headers> | ||||
|                 <header name="Access-Control-Allow-Origin" value="http://webplayer.example.org" /> | ||||
|                 <header name="baz" value="quux" /> | ||||
|         </http-headers> | ||||
|         <on-connect>/home/icecast/bin/stream-start</on-connect> | ||||
|         <on-disconnect>/home/icecast/bin/stream-stop</on-disconnect> | ||||
|     </mount> | ||||
|     --> | ||||
|  | ||||
|     <!-- | ||||
|     <mount type="normal"> | ||||
|         <mount-name>/auth_example.ogg</mount-name> | ||||
|         <authentication type="url"> | ||||
|             <option name="mount_add"       value="http://myauthserver.net/notify_mount.php"/> | ||||
|             <option name="mount_remove"    value="http://myauthserver.net/notify_mount.php"/> | ||||
|             <option name="listener_add"    value="http://myauthserver.net/notify_listener.php"/> | ||||
|             <option name="listener_remove" value="http://myauthserver.net/notify_listener.php"/> | ||||
|             <option name="headers"         value="x-pragma,x-token"/> | ||||
|             <option name="header_prefix"   value="ClientHeader."/> | ||||
|         </authentication> | ||||
|     </mount> | ||||
|     --> | ||||
|  | ||||
|     <fileserve>1</fileserve> | ||||
|  | ||||
|     <paths> | ||||
|         <!-- basedir is only used if chroot is enabled --> | ||||
|         <basedir>/usr/share/icecast</basedir> | ||||
|  | ||||
|         <!-- Note that if <chroot> is turned on below, these paths must both | ||||
|              be relative to the new root, not the original root --> | ||||
|         <logdir>/var/log/icecast</logdir> | ||||
|         <webroot>/usr/share/icecast/web</webroot> | ||||
|         <adminroot>/usr/share/icecast/admin</adminroot> | ||||
|         <!-- <pidfile>/usr/share/icecast/icecast.pid</pidfile> --> | ||||
|  | ||||
|         <!-- Aliases: treat requests for 'source' path as being for 'dest' path | ||||
|              May be made specific to a port or bound address using the "port" | ||||
|              and "bind-address" attributes. | ||||
|           --> | ||||
|         <!-- | ||||
|         <alias source="/foo" destination="/bar"/> | ||||
|         --> | ||||
|         <!-- Aliases: can also be used for simple redirections as well, | ||||
|              this example will redirect all requests for http://server:port/ to | ||||
|              the status page | ||||
|         --> | ||||
|         <alias source="/" destination="/status.xsl"/> | ||||
|         <!-- The certificate file needs to contain both public and private part. | ||||
|              Both should be PEM encoded. | ||||
|         <ssl-certificate>/usr/share/icecast/icecast.pem</ssl-certificate> | ||||
|         --> | ||||
|     </paths> | ||||
|  | ||||
|     <logging> | ||||
|         <accesslog>access.log</accesslog> | ||||
|         <errorlog>error.log</errorlog> | ||||
|         <!-- <playlistlog>playlist.log</playlistlog> --> | ||||
|         <loglevel>3</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error --> | ||||
|         <logsize>10000</logsize> <!-- Max size of a logfile --> | ||||
|         <!-- If logarchive is enabled (1), then when logsize is reached | ||||
|              the logfile will be moved to [error|access|playlist].log.DATESTAMP, | ||||
|              otherwise it will be moved to [error|access|playlist].log.old. | ||||
|              Default is non-archive mode (i.e. overwrite) | ||||
|         --> | ||||
|         <!-- <logarchive>1</logarchive> --> | ||||
|     </logging> | ||||
|  | ||||
|     <security> | ||||
|         <chroot>0</chroot> | ||||
|         <changeowner> | ||||
|             <user>icecast</user> | ||||
|             <group>icecast</group> | ||||
|         </changeowner> | ||||
|     </security> | ||||
| </icecast> | ||||
| @@ -1,5 +1,10 @@ | ||||
| icecast: | ||||
|   image: vimagick/icecast | ||||
|   ports: | ||||
|     - "8000:8000" | ||||
|   restart: unless-stopped | ||||
| version: "3.8" | ||||
| services: | ||||
|   icecast: | ||||
|     image: vimagick/icecast | ||||
|     ports: | ||||
|       - "8000:8000" | ||||
|     volumes: | ||||
|       # ./data/etc:/etc/icecast:ro | ||||
|       - ./data/log:/var/log/icecast:rw | ||||
|     restart: unless-stopped | ||||
|   | ||||
		Reference in New Issue
	
	Block a user