summaryrefslogtreecommitdiffstats
path: root/share/man/container-get-curl.1.rst
blob: e94260bd54e082a946e9058d58a05f287d647b5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
.. Open Infrastructure: compute-tools

.. Copyright (C) 2014-2022 Daniel Baumann <daniel.baumann@open-infrastructure.net>
..
.. SPDX-License-Identifier: GPL-3.0+
..
.. This program is free software: you can redistribute it and/or modify
.. it under the terms of the GNU General Public License as published by
.. the Free Software Foundation, either version 3 of the License, or
.. (at your option) any later version.
..
.. This program is distributed in the hope that it will be useful,
.. but WITHOUT ANY WARRANTY; without even the implied warranty of
.. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.. GNU General Public License for more details.
..
.. You should have received a copy of the GNU General Public License
.. along with this program.  If not, see <https://www.gnu.org/licenses/>.

==================
container-get-curl
==================

---------------------------------------------------------------------------
Download a Debian based container by downloading a tarball over the network
---------------------------------------------------------------------------

:manual section: 1
:manual group: Open Infrastructure

Synopsis
========

| **container get -s curl** ['OPTIONS']

Description
===========

The curl container download script uses curl(1) to download a tarball over the
network to create a Debian based container.

Depending on the tarball this script otherwise creates a pure Debian system
with three modificiations:

  * hostname is set (container name) in /etc/hostname
  * systemd machine-id is generated in /etc/machine-id
  * root password is set (user specified or 16 random characters)

Container images
----------------

compute-tools will download tarballs from a server expecting that the images are
tarballs with either gzip, lzip, xz, or no compression. See container-images.sh
as an example on how to create your own container images.

Options
=======

The following script options are available:

-n, --name='NAME':
  Specify container name.

-a, --architecture='ARCHITECTURE':
  Specify container architecture.

--clean:
  Remove container tarball after successful download.

-p, --root-password='PASSWORD':
  Specify the root password, defaults to a random 16 character password.

--server='SERVER':
  Specify the image server to download from, defaults to
  'https://get.open-infrastructure.net/system/container/debian'.

--setup='SETUP':
  Specify the setup image name to download, defaults to the value specified
  through --system using the setup.tar.${COMPRESSION} suffix (where
  ${COMPRESSION} is either lz, xz, or gz depending on compressor availability on
  the host system).

--system='SYSTEM':
  Specify the system image name to download, defaults to
  debian-bullseye-current_${ARCHITECTURE}.system.tar.${COMPRESSION} (where
  ${ARCHITECTURE} is the host systems architecture and ${COMPRESSION} either
  lz, xz, or gz depending on compressor availability on the host system).

Examples
========

Download a Debian 11 (bullseye) based container with same architecture as the host
system:

  sudo container get -s curl -n bullseye.example.net

Download a Debian 11 (bullseye) based container with different architecture as the
host system:

  sudo container get -s curl -n bullseye-i386.example.net -- --system debian-bullseye-current_i386.system.tar.xz

Files
=====

The following files are used:

/etc/compute-tools/config:
  Container configuration files.

/usr/share/compute-tools/get-scripts:
  Container download scripts.

/usr/share/doc/compute-tools:
  Container documentation.

/var/lib/machines:
  Container directory.

/var/cache/container:
  Container cache directory.

See also
========

| compute-tools(7),
| container(1).

Homepage
========

More information about compute-tools and the Open Infrastructure project can be
found on the homepage (https://open-infrastructure.net).

Contact
=======

Bug reports, feature requests, help, patches, support and everything else are
welcome on the Open Infrastructure Software Mailing List
<software@lists.open-infrastructure.net>.

Debian specific bugs can also be reported in the Debian Bug Tracking System
(https://bugs.debian.org).

Authors
=======

compute-tools were written by Daniel Baumann
<daniel.baumann@open-infrastructure.net> and others.