Sorry this is a long post, and really only covers some of what Discord can do.
If you are familiar at all with the old IRC based world, then Discord is essentially a step up from that because it allows direct image pasting into a "server". When you connect to a Discord server, you are not connecting to another user - the server itself resides on the Discord side. So if you were ever concerned about security, you can not derive a user's IP address, location or any other identifying information about them. Likewise when you use the voice chat or video chat features, you are connecting to the Discord server which acts as a 3rd party intermediary which then connects to the other partner of the communication (note this can be more than 1-1 it can be many-many if setup like this).
Because the server doesn't sit on a 'users' computer, it means it is online 24/7 independent of who created it. Transferring ownership of the server is quite simple too (just a few clicks).
There is a lot of material on the Discord site about setting up a server and how to do so, more than I could possibly put here - so like MaePeach suggested, have a look on the Discord support forums using her link.
That said, I have setup a Discord server for a model I follow and still administer, so I will explain a little how I set this one up (and by no means is this indicative of how you should do it, but feel free to use the ideas I shared).
Firstly I have setup access levels for the different tiers of members. The Tiers I use (in order of rights/access to the system) are: Admin, Model, Moderator, Fanclub, Fans, Greys, Everyone. Everyone is a default account created and when someone new joins the server they are automatically assigned to that role.
I have a separate Admin account to remove the "crown" that appears next to the server administrator in the chat. No one is actually assigned to that role, so it supresses the 'crown' that appears normally next to their name.
Each tier has a different colour (I've used the CB colours Model-Orange, Moderator-Red, Fanclub-Green, Fans-Blue, Grey-Grey).
From the server, I have a couple of text-based channels with varying levels of access. Models and Moderators can access all of the public channels.
The channels that I have are Announcements, Rules, General, Fanclub, Moderator.
Announcements - only allowed users can post when the model will be on next, or any important updates like absences etc.
Rules - a static channel that all users are expected to read and follow the defined rules (as determined in this case by the model herself). The permissions on this channel allow everyone to read them, but no one can post or make comments in it - so it is a static "list" of whats expected about their membership in Discord.
General - Everyone has access to read/write and this is where the bulk of the conversations happen on the server
Fanclub - restricted to the model, moderators and fanclub members. More exclusive chat room where fans can talk about more fan related topics, for example the videos that the model releases that are available only to the fanclub, released each month.
Moderator - restricted to the model and her moderators to discuss management of the room or any other topic as needed.
Also, these rooms can be flagged as "NSFW" which requires a person to accept that NSFW material can be observed. I believe as long as it is correctly flagged, Discord have not taken any direct action against those rooms. There has been talk in the past about this on this forum and I believe they are sex worker friendly/adult material friendly.
If a user doesn't have the right to access a channel, they simply can't see it in their discord channel listing. So the Fans would never know there is a FanClub channel unless they were told, or later became a fanclub member. Changing permissions is simply right clicking on a users name and changing it with a tick box.
There are additional chat rooms that I have created for "special" events in the past. For example I wanted to have a chat room setup to talk about the Birthday party for the model. To keep it a secret from the model, I setup the permissions so they couldnt see that channel. Later, I added the model back in after the actual event so they could see what was said. I've done this about 5-6 times for different reasons and had different levels of control over who could see it.
I have also imported a Music Bot into the server which is a command driven applet which connects to youtube and will play the music from youtube. In this instance on fanclub members can use the commands, but fans can join and listen. This way people can be in a shared voice room and listen to the music together as a collective. I've seen upwards of half a dozen people join this room at different times of days to listen to the music.
The voice rooms don't get a lot of 'action' as such on my server, but the chat room is active all times of the day. As many of the model's fans are spread around the world, it gives us all the ability to remain in contact with each other when her room is offline, or she is away.
Uploading a picture to Discord, is simply a case of dragging and dropping an image into a Channel. So a model could upload images easily by doing that and any one who has access to that channel can see the image (Note that this also allows the viewer to download the image as well).
Some of the other things you can do with Discord include - adding "game" bots which create some simple text based games, music bots (mentioned above), private messaging (PMs are 1-1, so are completely independant of the server, this can be controlled directly by the user to allow/disallow PMs as per their discretion*), video chats (i have used the video chat in the past for a private show, like you would do with Skype perhaps) and so on.
*When Discord was setup, the model was worried about everyone wanting to PM her constantly, so she set it up that you can only PM her if you are on her "friends" list in Discord, and further restricted that she has to friend you - if you try to add her as a friend, the systm disallows it. This gave her control over who can PM her by inclusion and everyone else is automatically excluded.
This model has been using Discord now for about a year and she has said to me in the past that she thinks it was a great idea to bring her "closest" fans together and create a small family like construct. We are quite chatty on Discord and its a great way to share and stay in touch.
One other side advantage is that when the streaming servers have had chat problems in the past, she continued to video stream on the site and moved to chat with the regulars in the discord channel. There are obvious limits here as some people will miss out, but those who were in Discord at the time could continue to enjoy her show and still chat with her.
Sorry about this email being so long and I might have jumped around a fair bit, but hope it gives you some insight.