How to best ask questions on this discussion forum

Note: The title and content of this post are subject to change. The purpose of this post is to help with the formatting of questions, and the provision of necessary information so that your questions get answered promptly. Currently it is me (@simos) who is putting this together, so all complaints go here.

1. Use a descriptive title to the topic

A descriptive title helps to remember an ongoing discussion, and also helps future users who are searching for the same issue.
If unsure, just make your best guess. You can always edit it later.

2. Specify the Category (LXD or LXC, or General)

When creating a new topic, specify the category of the post, whether it is about LXD, LXC, or if it does not fit in either, put General. See a comparison between LXD and LXC, if unsure.

3. Provide relevant information about your setup

In many cases, users run Ubuntu on the host, and use Ubuntu containers. It is good to be explicit in any case. But if you do not mention, then most likely it is assumed you run Ubuntu on both the host and the containers.

When you configure LXD, you can either use a loop file, or use a dedicated partition. With either ZFS, btrfs, or another filesystem. If you think this choice is relevant to the question, mention it.

The are several networking types in LXD. The default is a private and managed bridge, and the device is called lxdbr0. If you use something else in a container, mention it.

4. Formatting

When composing a question, there are useful formatting icons to help pretty-present your question.
The one that is missing from the icon bar is the code environment (?) for multi-line text.

4.1 Code environment

On a blank line, type three consecutive back-ticks, then paste the command output, and finally type on a blank line at the end, three consecutive back-ticks.

Above me there is a line with ```.
Whatever is pasted in between those back-ticks, 
is shown in a monospace font.
Below me there is a line with ```.

Avoid the quote environment because it prepends empty spaces to each line and it often messes up the content.

4.2 Preformatted words and italics

This word is preformatted, lxdbr0. You just need to enclose it with back-ticks.
Use it for keywords and commands.
The icon </> does the same for this one.

This word is in italics, managed network. You just need to enclose it with underscores.
Use it for terminology.
The icon I does the same for this one.

5.0 Reproducible issue

If you can demonstrate the issue you are getting with a list of instructions, then this helps immensely for someone else to try to replicate.
Here is an example from start to finish. It does not describe a specific problem, just demonstrates.

$ lxc launch ubuntu:18.04 mycontainer
Creating mycontainer
Starting mycontainer
$  lxc shell mycontainer
root@mycontainer:~# apt update
root@mycontainer:~# apt install -y nginx
root@mycontainer:~# lsof -i -n
systemd-n  206 systemd-network   16u  IPv4 338713       UDP 
systemd-r  209 systemd-resolve   12u  IPv4 338734       UDP 
systemd-r  209 systemd-resolve   13u  IPv4 338735       TCP (LISTEN)
sshd       279            root    3u  IPv4 344685       TCP *:ssh (LISTEN)
sshd       279            root    4u  IPv6 344687       TCP *:ssh (LISTEN)
nginx     1140            root    6u  IPv4 355822       TCP *:http (LISTEN)
nginx     1140            root    7u  IPv6 355823       TCP *:http (LISTEN)
nginx     1141        www-data    6u  IPv4 355822       TCP *:http (LISTEN)
nginx     1141        www-data    7u  IPv6 355823       TCP *:http (LISTEN)
nginx     1142        www-data    6u  IPv4 355822       TCP *:http (LISTEN)
nginx     1142        www-data    7u  IPv6 355823       TCP *:http (LISTEN)
nginx     1143        www-data    6u  IPv4 355822       TCP *:http (LISTEN)
nginx     1143        www-data    7u  IPv6 355823       TCP *:http (LISTEN)
nginx     1144        www-data    6u  IPv4 355822       TCP *:http (LISTEN)
nginx     1144        www-data    7u  IPv6 355823       TCP *:http (LISTEN)
root@mycontainer:~# logout
1 Like

I just found out, that also code tags can be used:
[code] content [/code]

Also some improvement suggestions:
Regarding providing relevant information:

  1. In general most questions regarding the environment get answered by:
    • providing the container config with:
      lxc config show containername -e
    • general config: lxc info
    • providing version informations: lsb_release -a, lxc version and uname -a
  2. “Provide a detailed description what exactly you did”
  3. “Provide logs, error messages etc.”

Most important points:
“Doublecheck if you followed instructions and typed things correctly”
“Search the forum first!”

@stgraber could you:

  1. Pin this topic to the start page?
  2. Notify users upon account creation of this topic?

@stgraber Thank you :smiley:.