Inhoud
- 1 Docker-sjabloonschema
- 1.1 Naam
- 1.2 Overzicht
- 1.3 Register
- 1.4 Opslagplaats
- 1.5 Bevoorrecht
- 1.6 Ondersteuning
- 1.7 Netwerk
- 1.8 WebUI
- 1.9 icoon
- 1.10 Categorie
- 1.11 Configuratie
- 1.11.1 1) Pad
- 1.11.2 2) Variabel
- 1.11.3 3) Poort
(OPMERKING: het schema zoals hier beschreven is alleen compatibel met unRaid v6.2+. Om compatibiliteit met unRaid 6.0.x / 6.1.x te behouden, moet u het schema gebruiken zoals hier beschreven:http://lime-technology.com/forum/index.php?topic=40299.0(Opmerking: zelfs onder 6.2 zijn er aanvullende schema-items beschreven in die link die bruikbaar zijn (en in sommige gevallen sterk aanbevolen) voor gebruik door Community Applications)
Zoals velen van jullie weten, zijn sjablonen de geprefereerde manier om Docker-containers in unRAID te distribueren en te implementeren. De taal die wordt gebruikt om sjablonen voor unRAID te schrijven, is XML, een beproefde en gevestigde opmaaktaal die zowel uitbreidbaar als leesbaar is voor mensen, waardoor het perfect is voor de taak.
Opmerkingen over compatibiliteit met Community Applications (CA).
CA vertrouwt op een externe parser en hosting van de xml-bestanden van de sjabloonauteur die buiten de controle van de auteur van CA's valt. Daarom is het enige ondersteunde XML-formaat datgene dat wordt gegenereerd door het docker-tabblad van unRaid wanneer op SAVE op de sjabloon wordt gedrukt. Elke handmatige bewerking van de XML-bestanden kan compatibiliteitsproblemen opleveren voor CA en als ze incompatibel blijken te zijn, zal het sjabloon binnen CA op de zwarte lijst worden geplaatst totdat het in overeenstemming is gebracht met de door DockerMan gegenereerde bestanden. De extra spatiëring op de verschillende Config-elementattributen is bijvoorbeeld niet compatibel met de parser van derden en zal resulteren in fouten of onjuiste invoer bij het toevoegen van de container via CA. dockerMan genereert niet de extra spatiëring zoals hieronder vermeld, en CA heeft geen probleem met de gegenereerde bestanden van dockerMan.
Hieronder staan de ondersteunde elementen:
Naam
Dit is de naam van de standaardcontainer en werkt als een suggestie voor de gebruiker.
attributen:
- Standaard: dit is de standaardwaarde voor dit element.
Sync
Commentaar van Squid: De attributen lijken niet te zijn geïmplementeerd door dockerMan. Gebruik in plaats daarvan
Overzicht
In dit element kunt u een korte beschrijving van de toepassing toevoegen, zoals de functies ervan.
BitTorrent Sync, of kortweg - Sync - is een applicatie voor gegevenssynchronisatie. Het primaire doel is om de toegewezen mapinhoud hetzelfde te houden op 2 of meer apparaten/computers. Zodra er iets verandert op een computer, moet de verandering (zou het de inhoud van een bestand zijn, het hernoemen of verwijderen van bestanden, enz.) worden doorgegeven aan alle andere computer(s) die de map gesynchroniseerd willen houden. Sync is beschikbaar voor een aantal platforms, zowel desktop als mobiel, wat een goede gebruiksflexibiliteit geeft.
register
Dit element slaat de respectievelijke Docker Registry-URL van de container op. Dit wordt gebruikt om update-informatie op te halen.
https://registry.hub.docker.com/u/limetech/sync/
Opslagplaats
Dit element slaat de repository van de container op en bestaat normaal gesproken uit de Docker Registry-gebruikersnaam en de naam van de container (gebruiker/container), of gebruikersnaam, containernaam en label (gebruiker/container:label).
limetech/sync
bevoorrecht
Standaard zijn Docker-containers "unprivileged" en kunnen ze bijvoorbeeld geen Docker-daemon in een Docker-container uitvoeren. Dit komt omdat een container standaard geen toegang heeft tot apparaten, maar een "geprivilegieerde" container krijgt toegang tot alle apparaten. Zie meer op:https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities
false
Steun
Dit element bevat een URL voor de ondersteuningsthread van een forum.
http://lime-technology.com/forum/index.php?topic=40654.0
Netwerk
Dit element bevat alle informatie over het netwerk van de container.
Waarden
- Brug:dit is de standaardoptie van Docker, waarbij alle netwerkinteracties plaatsvinden achter een NAT-laag, wat prestatiekosten met zich meebrengt. In bridge-modus worden alleen toegewezen poorten zichtbaar op het netwerkadres van unRAID.
- Gastheer:Tekst uitleggen
- Geen:Tekst uitleggen
attributen:
- Standaard: dit is de standaardwaarde voor dit element.
bridge
Squid's Edit: Het kenmerk lijkt niet te zijn geïmplementeerd. Gebruik in plaats daarvan
WebUI
- DeWebUIelement bevat een masker voor de webbeheerinterface van de hoofdtoepassing van de container.
http://[IP]:[PORT:32400]/web/index.html
Icoon
- DeIcoonelement slaat een URL op voor het pictogram dat wordt weergegeven op de webinterface.
http://d2631fvi2jdnb6.cloudfront.net/docker/limetech/plex.png
Categorie
Het Categorie-element kan worden gevuld met het volgendecategorieën:en/ofcategorieën:subcategorieën, gevolgd door een spatie:
Backup:, Cloud:, Downloaders:, HomeAutomation:, Productivity:, Tools:, Tools:System, Other:, MediaApp:Video, MediaApp:Music, MediaApp:Books, MediaApp:Photos, MediaApp:Other, MediaServer:Video, MediaServer :Muziek, MediaServer:Boeken, MediaServer:Foto's, MediaServer:Overig, Netwerk:Web, Netwerk:DNS, Netwerk:FTP, Netwerk:Proxy, Netwerk:Voip, Netwerk:Beheer, Netwerk:Overig, Netwerk:Messenger, Status:Stabiel , Status: bèta
(Video) What is JSON Schema
MediaApp:Music MediaServer:Photos Status:Stable
Opmerking: de "officiële" categorie-items worden altijd gegeven door de Application Template Categorizer-plug-in (http://lime-technology.com/forum/index.php?topic=40111.0) en in het geval van discrepanties tussen het hier beschreven item en het item dat door de plug-in wordt geretourneerd, heeft de versie van de plug-in voorrang
configuratie
Deconfiguratieelement bevat alle configuratie die nodig is om de app binnen te laten werken.
Elkconfiguratieelement heeft verschillende attributen. Sommigen van hen hebben dezelfde rol in alle typen, zoalsNaam,Beschrijvingen , maar sommige hebben verschillende functies, afhankelijk van het type.
Noem deNaamattribuut bestaat uit een titel voor die configuratie die de rol van die instelling zou moeten samenvatten, zoalsWebUI-poort,Dir downloadenenz.
Doel: deDoelattribuut bevat de kant van de instellingen van de container. Voorbeeld: als u een app heeft met een webconfiguratiepagina op poort 8080, kunt u eenconfiguratieelement meeWebUI-poort NaamEn8080zoals hetDoel.
Weergave: deWeergaveattribuut bepaalt hoe elkconfiguratieelement wordt gepresenteerd in deBasisweergave. U kunt een instellenconfiguratiezoals gewoonlijk (altijd) en Geavanceerd (geavanceerd). U kunt ook deKnoppen bewerkendie verschijnen aan de rechterkant van elke ingevoerde instelling metaltijd verbergenEngeavanceerd verbergen. Houd er rekening mee dat alleWeergaveconfiguratie wordt genegeerd als [Geavanceerde weergave]] is ingeschakeld.
Configuratietypen:
Neem voor CA-compatibiliteit geen van de extra nieuwe regels op. Alle attributen moeten op dezelfde regel staan als het element, gescheiden door een spatie, zoals aangegeven in de gegenereerde bestanden van dockerMan
Er zijn veel configuratietypen beschikbaar voor sjabloonauteurs:
1) Pad
APadConfig-element bevat informatie over een Docker-volumetoewijzing.
Waarde:
- De waarde van dit element is het pad gekozen door de gebruiker.
attributen:
- Naam:Dit is de titel die links van de invoer wordt weergegeven, zoalsConfiguratiemap,Tv shows,Filmsenz...
- Doel:Dit is het pad dat beschikbaar is vanuit de container, bijvoorbeeld/config,/tv shows,/muziek,/filmsenz...
- Standaard:Dit is het standaardpad voor dit element.
- Modus:Deze attribuutwaarde kan zijnrwvoor lees-/schrijfrechten, ofrovoor alleen-lezen machtigingen.
- Beschrijving:Dit is een korte beschrijving van de instellingen en het gebruik van dit pad.
- Weergave:Dit attribuut is zichtbaar voor de gebruikeraltijd,geavanceerdbekijken, of als het zal zijnverborgenvan de gebruiker, ongeacht de basis-/geavanceerde weergavemodus. Standaard:altijd.
- Vereist:Als dit attribuut vereist is, moet dit worden ingesteld opWAAR; stel het anders in opvals(standaard).
/mnt/user/appdata/PMS
2) Variabel
AVariabelConfig-element bevat informatie over een Docker-omgevingsvariabele.
Waarde:
- De waarde van deze variabele volgens de invoer van de gebruiker.
attributen:
- Naam:Dit is de titel die links van de invoer wordt weergegeven, zoalsInlog naam,Login wachtwoordenz...
- Doel:Dit is de naam van de variabele die beschikbaar zal zijn in de container, GEBRUIKERSNAAM, WACHTWOORD enz...
- Standaard:Dit is de standaardwaarde voor dit element.
- Beschrijving:Dit is een korte beschrijving van de instellingen en het gebruik van dit pad. Standaard: niets.
- Weergave:Dit attribuut is zichtbaar voor de gebruikeraltijd,geavanceerdbekijken, of als het zal zijnverborgenvan de gebruiker, ongeacht de basis-/geavanceerde weergavemodus. Standaard:altijd.
- Vereist:Als dit attribuut vereist is, moet dit worden ingesteld opWAAR. Standaard:vals.
- Masker:Indien ingesteld opWAAR, zal het de invoer van de gebruiker maskeren. Handig voor wachtwoordinvoer, Standaard:vals.
Gebruikersnaam
3) Haven
AHavenHet configuratie-element bevat informatie over een door Docker blootgestelde poort en is alleen relevant bij gebruik in combinatie metbrugnetwerkmodus.
Waarde:
- De host-correspondent van deze poort, volgens de invoer van de gebruiker.
attributen:
- Naam:Dit is de titel die links van de invoer wordt weergegeven, zoalsWebinterfacepoort,Servicepoort,HTTPS-poortenz...
- Doel:Dit is het poortnummer dat wordt weergegeven vanuit de container, zoals80,443,8080enz...
- Standaard:Dit is de standaardwaarde voor dit element.
- Modus:Deze attribuutwaarde kan zijntcpvoor het TCP-protocol, ofudpvoor UDP-protocol.
- Beschrijving:Dit is een korte beschrijving van deze poortinstellingen en het gebruik ervan. Standaard: niets.
- Weergave:Dit attribuut is zichtbaar voor de gebruikeraltijd,geavanceerdbekijken, of als het zal zijnverborgenvan de gebruiker, ongeacht de basis-/geavanceerde weergavemodus. Standaard:altijd.
- Vereist:Als dit attribuut vereist is, moet dit worden ingesteld opWAAR. Standaard:vals.
32400
FAQs
How to make a docker template unRAID? ›
- Navigate to "Docker" tab and then the "Docker Repositories" sub-tab in the unRAID webui.
- Click on the "Save" button.
- Click back to "Docker" tab and then click on the "Add Container" button.
- Click on the "Template" dropdown menu and select the desired Docker image.
The default target is C:\ProgramData\Docker\configs . When creating a service which uses Windows containers, the options to specify UID, GID, and mode are not supported for configs. Configs are currently only accessible by administrators and users with system access within the container.
How to create a sample docker file? ›To create a Dockerfile, set up Docker and Docker Hub. Create the original Docker container and then create a file on it. Make changes to the container, and finally, create a new image.
How to make a docker container executable? ›Making Container Executable
The ENTRYPOINT instruction sets the default command for the container when we run it using the docker run <image> command. The former ENTRYPOINT instruction sets a command in exec form while the latter shell form executes the command using /bin/sh -c .
Docker is written in the Go programming language and takes advantage of several features of the Linux kernel to deliver its functionality. Docker uses a technology called namespaces to provide the isolated workspace called the container.
What format is the docker config file? ›The --config-file option allows you to set any configuration option for the daemon in a JSON format .
Where does docker store everything? ›On a linux system, docker stores data pertaining to images, containers, volumes, etc under /var/lib/docker.
What is the difference between Dockerfile and docker image? ›A Dockerfile is the Docker image's source code. A Dockerfile is a text file containing various instructions and configurations. The FROM command in a Dockerfile identifies the base image from which you are constructing. When you run the Docker run command, Docker uses this file to build the image itself.
What is the difference between Dockerfile and docker compose? ›A Dockerfile is a simple text file that contains the commands a user could call to assemble an image whereas Docker Compose is a tool for defining and running multi-container Docker applications. Docker Compose define the services that make up your app in docker-compose.
What is the difference between docker build and run? ›When using Docker, you will encounter two major operations build and run . The build command creates a docker image based on the Dockerfile . The run command uses the created docker image to run a container.
Do docker containers have their own file system? ›
Docker also supports containers storing files in-memory on the host machine. Such files are not persisted. If you're running Docker on Linux, tmpfs mount is used to store files in the host's system memory. If you're running Docker on Windows, named pipe is used to store files in the host's system memory.
How do I make a docker container run forever? ›The simplest way to keep the container running is to pass a command that never ends. We can use never-ending commands in any of the following ways: ENTRYPOINT or CMD directive in the Dockerfile. Overriding ENTRYPOINT or CMD in the docker run command.
What is the difference between container and executable? ›Service containers are fairly simple and run long-running processes that need to be started and stopped. Executable containers are generally more complex to configure and run singularly-focused, short-lived applications.
How to create a custom image docker? ›- Write a Dockerfile for your application.
- Build the image with docker build command.
- Host your Docker image on a registry.
- Pull and run the image on the target machine.
- Open docker-compose.yml in a text editor and add the following content: File: docker-compose.yml. ...
- Save the file and run Docker Compose from the same directory: docker-compose up -d. ...
- You now have a WordPress container and MySQL container running on your host. ...
- Stop and remove the containers: docker-compose down.
- Create a directory for the new Docker image and cd into it.: mkdir [directory-path] && cd [directory-path]
- Create a new Dockerfile in a text editor. ...
- Define a variable and (optionally) assign it a default value by typing: ENV [variable-name]=[default-value]
A Docker image is a read-only template containing a set of instructions for creating a container that can run on the Docker platform. It provides a convenient way to package up applications and preconfigured server environments, which you can use for your own private use or share publicly with other Docker users.
Can you build a Docker image from scratch? ›Create a simple parent image using scratch
You can use Docker's reserved, minimal image, scratch , as a starting point for building containers. Using the scratch “image” signals to the build process that you want the next command in the Dockerfile to be the first filesystem layer in your image.
- Step 1: Create a Base Container. ...
- Step 2: Inspect Images. ...
- Step 3: Inspect Containers. ...
- Step 4: Start the Container. ...
- Step 5: Modify the Running Container. ...
- Step 6: Create an Image From a Container. ...
- Step 7: Tag the Image. ...
- Step 8: Create Images With Tags.
The key difference between a Docker image Vs a container is that a Docker image is a read-only immutable template that defines how a container will be realized. A Docker container is a runtime instance of a Docker image that gets created when the $ docker run command is implemented.
What is the difference between docker build and Docker compose? ›
The key difference between the Dockerfile and docker-compose is that the Dockerfile describes how to build Docker images, while docker-compose is used to run Docker containers.
What is the difference between Docker file and Docker compose? ›A Dockerfile is a simple text file that contains the commands a user could call to assemble an image whereas Docker Compose is a tool for defining and running multi-container Docker applications. Docker Compose define the services that make up your app in docker-compose.
What is the difference between docker and Docker compose? ›The key difference between docker run versus docker-compose is that docker run is entirely command line based, while docker-compose reads configuration data from a YAML file. The second major difference is that docker run can only start one container at a time, while docker-compose will configure and run multiple.
Does docker use .env file? ›The . env file is used during the pre-processing step with docker-compose.
What is a docker secret? ›In terms of Docker Swarm services, a secret is a blob of data, such as a password, SSH private key, SSL certificate, or another piece of data that should not be transmitted over a network or stored unencrypted in a Dockerfile or in your application's source code.
What is the difference between arg and env in docker? ›The ARG arguments are only available when building the image, while ENV parameters are available to the application containers during build and when the container is running. We presented the relevant examples for both dockerfile and docker compose.