Application
The service that runs your code, from a Docker image or a Git repository. Add it, configure it, turn it off.
Add an application
Section titled “Add an application”In the project, click Add a service, then Application: from a Docker image, built by your CI or published on a registry. Any language, any framework.
The service is created with its default configuration. Fransys adds its settings (image, port, address…) within one to two minutes; they show up in the panel by themselves. Nothing runs until the project is deployed.
Docker image or Git repository
Section titled “Docker image or Git repository”In the General tab, the Code origin decides where the image comes from:
- External image: enter the Docker image, for example
ghcr.io/your-team/app:latest. For a private image, see below; - GitHub or GitLab: Fransys builds the image on every push. See From GitHub or GitLab.
After this choice, new settings may appear after a few seconds: the console shows Updating settings… in the meantime.
Configure the service
Section titled “Configure the service”The panel sorts the settings into tabs:
| Tab | What you set there |
|---|---|
| General | The platform, the code origin, the Docker image, the container port, the private registry. |
| Resources | CPU and memory per replica (reservations and limits), the number of replicas, the GPU. |
| Storage | Volumes: mount point and size. |
| Variables | Environment variables. See Variables and secrets. |
| Deployment commands | Commands run before or after the first install, before or after an update. |
| Scheduled tasks | Recurring commands. See Scheduled tasks. |
| Network | Access from the internet, domains, redirects, the outbound IP. |
| Security and Advanced | The container and pod security context, the Kubernetes service account, probes, annotations and labels. |
The Search a setting field finds a setting by name (port, domain, memory…). An empty tab fills up depending on what you choose in the other tabs.
- Each setting is saved as soon as you leave the field.
- It applies at the project’s next deployment.
- An empty required setting blocks the deployment: it’s flagged Required to deploy.
Private image
Section titled “Private image”In General, turn on Private registry (authentication), then fill in the Registry username and the Registry password. The password is encrypted: once saved, you can’t read it back.
Resources and replicas
Section titled “Resources and replicas”- Reservations: what each replica is guaranteed, in CPU and memory. This is what takes up room on the cluster’s machines.
- Limits: what a replica can’t go beyond. Without a limit, it takes whatever is free.
- Number of replicas: in Fixed mode, the number you choose; in Automatic mode, Fransys adds more as load grows. See Scaling.
- GPU: None or NVIDIA, on a cluster that has GPU machines. See GPU.
Deployment commands
Section titled “Deployment commands”To run a command at the right moment (database migrations, clearing a cache…), add it in Deployment commands, at one of four moments:
- Before the first install and After the first install;
- Before an update and After an update.
The Execution order sorts several commands at the same moment.
Probes
Section titled “Probes”In Advanced, the Startup probe, the Liveness probe and the Readiness probe tell Fransys when the service is ready to receive traffic, and when to restart it. If your application is slow to start, tune the startup probe rather than turning it off.
Public or internal address
Section titled “Public or internal address”In Network, Reachable from the internet decides whether the service has a public address. A public application gets a fransysapp.com address, over HTTPS. On the diagram, the link on the card opens it in a new tab.
A service that’s Internal to the project has no public address: only the project’s services can reach it.
Workers, queues, scheduled tasks
Section titled “Workers, queues, scheduled tasks”Fransys doesn’t let you change the container command. To run another process of the same application (a queue, a websocket):
- copy the service, then pick its role with an environment variable that your entrypoint reads. Your agent can prepare this copy in a plan;
- for a scheduled job, add a recurring command: see Scheduled tasks.
Fixed outbound IP
Section titled “Fixed outbound IP”By default, the service goes out to the internet with a dynamic, shared address. If a partner needs to allow your address, set the Outbound IP (Network tab) to a New fixed IP. A fixed IP belongs to the organisation: several services can use it. Each deployed fixed IP is billed every month (see Pricing).
Deleting a fixed IP can’t be undone: the address is released and you may not be able to get it back.
ARM processors
Section titled “ARM processors”On a cluster with ARM machines, your Docker images must be built for arm64.
Turn off, rename, delete
Section titled “Turn off, rename, delete”- Service active: when turned off, the service is no longer deployed, but its configuration is kept.
- Rename the service: only the name changes.
- Delete the service: the service and its configuration are removed from the project. If it’s running, it stops at the next deployment.