Changes

From Amahi Wiki
Jump to: navigation, search
45 bytes removed ,  22:59, 27 August 2017
no edit summary
## ==How to add a new app? ==
Taking example of [Hydra](https://hub.docker.com/r/linuxserver/hydra/)
rm -rf downloads # Use this if you want all files to be removed after uninstall
## NOTE
You should be careful about the following:  ## ==Future Work== ### ===Cleanup - too many images. ===
Presently when a containerised app is uninstalled the container is stopped and removed but the image used to run the container stays (Note the difference between container and image). I am not removing the image since images are generally large and what if users decides to reinstall the app? This has to be thought of more. Adding the feature of deleting image after installation is essentially 1 line of code. Going forward we might have to come up with a mechanism for clearing images which haven't been used for a long time.
### ===Reducing Download Size===
We can't build and maintain containers for all apps. Vendors provide official containers but some of them are huge in size. To fix this problem we can reduce the download to that of a normal installation by using an apt-cache, gem server or npm server on hda itself.
The idea is following: Instead of we building images on our server we can push the Dockerfile to the client and the client can build the docker image. While building the image they will download the required packages, gem files, node dependencies or whatever. If we have a mechanism to cache this download so that all the subsequent builds can use this data then we can save a lot of Internet usage. One possible way of doing this was running apt-cache, gem server and npm server on the client itself.
### ===Updating apps===
With containers updates can be really easy. We can support single click update of apps. It's just a matter of supporting them now.
### ===Support for advance configuration.===
With containers we can limit the cpu/memory/disk usage of each app. We just have to modify the docker-compose.yml file for the app for these changes without doing any modification to the source code. If required, this can be used.
### ===Collecting Logs===
It's a new feature, we will need to collect a lot of metrics from the users to understand how this feature is working and how it can be improved. Some of those features include
* The CPU info of systems which are running amahi.
* RAM and Storage information.
* Logs of containerised apps to debug errors.
15

edits