Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/archinstall/default_profiles/servers/docker.py
diff options
context:
space:
mode:
Diffstat (limited to 'archinstall/default_profiles/servers/docker.py')
-rw-r--r--archinstall/default_profiles/servers/docker.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/archinstall/default_profiles/servers/docker.py b/archinstall/default_profiles/servers/docker.py
new file mode 100644
index 00000000..e6e17831
--- /dev/null
+++ b/archinstall/default_profiles/servers/docker.py
@@ -0,0 +1,33 @@
+from typing import List, Union, TYPE_CHECKING
+
+import archinstall
+
+from archinstall.default_profiles.profile import Profile, ProfileType
+from archinstall.lib.models import User
+
+if TYPE_CHECKING:
+ from archinstall.lib.installer import Installer
+
+
+class DockerProfile(Profile):
+ def __init__(self):
+ super().__init__(
+ 'Docker',
+ ProfileType.ServerType
+ )
+
+ @property
+ def packages(self) -> List[str]:
+ return ['docker']
+
+ @property
+ def services(self) -> List[str]:
+ return ['docker']
+
+ def post_install(self, install_session: 'Installer'):
+ users: Union[User, List[User]] = archinstall.arguments.get('!users', None)
+ if not isinstance(users, list):
+ users = [users]
+
+ for user in users:
+ install_session.arch_chroot(f'usermod -a -G docker {user.username}')