summaryrefslogtreecommitdiff
path: root/public/posts/proxmox-docker-workstation/index.html
blob: 0c8bb55bead988830cac33e927fb88b4bf2368ed (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
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
<!DOCTYPE html>
<html lang="en-us">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<style type=text/css>body{font-family:monospace;}</style>
	<title>Proxmox Docker Workstation</title>
	
	
	<link rel="stylesheet" href="/css/style.css">
	
	
</head>
<body>
	<header>
	==========================<br>
	== <a href="https://blog.tinfoil-hat.net">blog.tinfoil-hat.net</a> ==<br>
	==========================
	<div style="float: right;">A save home for every tinfoil-hat!</div><br>
	<p>
	<nav>
			<a href="/"><b>Start</b></a>.
			
			
			<a href="/posts/"><b>Posts</b></a>.
			
			<a href="/categories/"><b>Categories</b></a>.
			
			<a href="/tags/"><b>Tags</b></a>.
			
	</nav>
	</p>
	<script async defer data-website-id="9b2f4923-27f6-41ac-ba15-43c51d35250e" src="https://stats.tinfoil-hat.net/umami.js"></script>
	
</header>

	
	<main>
		<article>
			<h1>Proxmox Docker Workstation</h1>
			<b><time>23.10.2023 05:50</time></b>
		       
		           <a href="/tags/linux">Linux</a>
        	       
		           <a href="/tags/server">Server</a>
        	       
		           <a href="/tags/technology">Technology</a>
        	       

			<div>
				<h2 id="install-linux-mint-debian-edition-6">Install Linux Mint Debian Edition 6</h2>
<p>I am assuming, that you want to use a Debian based Operating System (not Ubuntu based) and you want Proxmox, Docker and GPT4All installed on your Laptop. Here I am using Linux Mint Debian Edition 6</p>
<h3 id="lets-get-started">let&rsquo;s get started:</h3>
<p>Go trough installation process</p>
<p>
<figure>
  <img src="/images/mint-install.png" alt="mintinstall" />
</figure>


</p>
<h2 id="install-proxmox-ve">Install Proxmox VE</h2>
<p>Upgrade the system and install some basic tools</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>sudo apt update <span style="color:#f92672">&amp;&amp;</span> sudo apt dist-upgrade -y
</span></span><span style="display:flex;"><span>sudo apt install vim git curl wget htop ssh netcat-traditional openvpn
</span></span></code></pre></div><p>Cerate a Interface used for LXC Containers:
edit <code>/etc/network/interfaces</code></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>auto lo
</span></span><span style="display:flex;"><span>iface lo inet loopback
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>auto enp2s0
</span></span><span style="display:flex;"><span>iface enp2s0 inet static
</span></span><span style="display:flex;"><span>        address 10.10.20.254/24
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>        post-up echo <span style="color:#ae81ff">1</span> &gt; /proc/sys/net/ipv4/ip_forward
</span></span><span style="display:flex;"><span>        post-up iptables -t nat -A POSTROUTING -s <span style="color:#e6db74">&#39;10.10.20.0/24&#39;</span> -o enp0s3 -j MASQUERADE
</span></span><span style="display:flex;"><span>        post-down iptables -t nat -D POSTROUTING -s <span style="color:#e6db74">&#39;10.10.20.0/24&#39;</span> -o enp0s3 -j MASQUERADE
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>source /etc/network/interfaces.d/*
</span></span></code></pre></div><p>Edit hosts file, needed to install proxmox successfully
<code>vim /etc/hosts</code></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>127.0.0.1       localhost
</span></span><span style="display:flex;"><span>10.10.20.254   devstation.proxmox.local devstation
</span></span></code></pre></div><p><code>hostname --ip-address</code><br>
127.0.0.1  10.10.20.254 # should return your IP address here</p>
<p>Add Proxmox Repos and gpg key</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>echo <span style="color:#e6db74">&#34;deb [arch=amd64] http://download.proxmox.com/debian/pve bookworm pve-no-subscription&#34;</span> &gt; /etc/apt/sources.list.d/pve-install-repo.list
</span></span><span style="display:flex;"><span>wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg 
</span></span></code></pre></div><p>Upgrade Packagebase, Install Proxmox Kernel and reboot</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>apt update <span style="color:#f92672">&amp;&amp;</span> apt full-upgrade
</span></span><span style="display:flex;"><span>apt install pve-kernel-6.2
</span></span><span style="display:flex;"><span>systemctl reboot
</span></span></code></pre></div><p>Install Proxmox, remove Debian Kernel, update Grub bootloader and remove os-prober</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>apt install proxmox-ve postfix open-iscsi chrony
</span></span><span style="display:flex;"><span>apt remove linux-image-amd64 <span style="color:#e6db74">&#39;linux-image-6.1*&#39;</span>
</span></span><span style="display:flex;"><span>update-grub
</span></span><span style="display:flex;"><span>apt remove os-prober
</span></span></code></pre></div><p>We log into the webinterface with root user, so it needs to have a password</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>sudo -i
</span></span><span style="display:flex;"><span>passwd
</span></span></code></pre></div><p>Now navigate to your browser with this URL
https://127.0.0.1:8006</p>
<p>Accept the security exception and enter your root password</p>
<p>
<figure>
  <img src="/images/exception.png" alt="exception" />
</figure>


</p>
<p>Now you should see this dashboard</p>
<p>
<figure>
  <img src="/images/dashboard.png" alt="dashboard" />
</figure>


</p>
<h2 id="install-docker-and-portainer">install Docker and Portainer</h2>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>sudo apt install docker.io docker-compose
</span></span><span style="display:flex;"><span>sudo docker volume create portainer_data
</span></span><span style="display:flex;"><span>sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart<span style="color:#f92672">=</span>always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
</span></span></code></pre></div><p>Now you can navigate to the Docker Webinterface</p>
<p>https://127.0.0.1:9443</p>
<p>you should see something like this</p>
<p>
<figure>
  <img src="/images/portainer.png" alt="portainer" />
</figure>


</p>
<h2 id="install-gpt4all">Install GPT4All</h2>
<p>comes in very hand for basic questions</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>wget https://gpt4all.io/installers/gpt4all-installer-linux.run
</span></span><span style="display:flex;"><span>sudo chmod +x gpt4all-installer-linux.run
</span></span><span style="display:flex;"><span>mkdir ~/Desktop
</span></span><span style="display:flex;"><span>./gpt4all-installer-linux.run
</span></span><span style="display:flex;"><span>mv ~/Desktop/GPT4All.desktop ~/.local/share/applications/
</span></span></code></pre></div><p>Now download a Language Model via GUI:</p>
<p>
<figure>
  <img src="/images/models.png" alt="models" />
</figure>


</p>
<p><strong>GPT4All is now ready to answer your questions</strong></p>
<p>
<figure>
  <img src="/images/gpt4all.png" alt="gpt4all" />
</figure>


</p>

			</div>
		</article>
	</main>
<aside>
	<div>
		<div>
			<h3>LATEST POSTS</h3>
		</div>
		<div>
			<ul>
				
				<li><a href="/posts/shell-aliases/">Shell Aliases</a></li>
				
				<li><a href="/posts/removed-services/">Service Update: Discontinuation Due to Frontend-Backend Incompatibility</a></li>
				
				<li><a href="/posts/revert-brave-flatpak-to-deb/">Revert Brave Flatpak to Deb</a></li>
				
				<li><a href="/posts/proxmox-docker-workstation/">Proxmox Docker Workstation</a></li>
				
				<li><a href="/posts/local-apt-mirror/">Local Apt Mirror</a></li>
				
			</ul>
		</div>
	</div>
</aside>


	<footer>
	<p>&copy; 2024 <a href="https://blog.tinfoil-hat.net"><b>blog.tinfoil-hat.net</b></a>.
	<a href="https://tinfoil-hat.net"><b>Landing Page</b></a>.
	<a href="http://keys.gnupg.net/pks/lookup?op=vindex&amp;fingerprint=on&amp;search=0xC0090D40CFE34966"><b>GPG-Fingerprint</b></a>.
	<a href="mailto:mal@tinfoil-hat.net"><b>E-Mail</b></a>.
	<a href="https://git.tinfoil-hat.net"><b>Gitweb</b></a>.
	</p>
</footer>

</body>
</html>