Activating admin account from console


(G Pritiranjan Das) #1

I am trying to setup Discourse with one-click installer using droplet over Digital Ocean. I followed all the instructions and have correctly configured the SMTP details. But when I register for the admin account using the front-end installer, I am not able to receive the email.

I read a tutorial where it is mentioned that if the email doesn’t land in the mailbox, I can still activate the account and set the user as admin using the following commands using the console:

cd /var/discourse
sudo ./launcher enter app
rails c
user = User.find_by_email("<admin_email>")
user.admin = true
user.approved = true
user.save
EmailToken.confirm(user.email_tokens.first.token)

I am able to run the commands up to the fourth line. After running the fourth command, it finds and displays the user details. But I am not able to enter the next command. There’s this colon “:” and when I reach the end of the displayed details, “(END)” is written. I can’t type and run the further commands to activate the user.

After rails c, there’s this [1] pry (main) > thing. I am not so much acquainted with the command line. Please help me out.


(Matt Palmer) #2

When the colon appears, press q to get back to a prompt, and type the next command.


(G Pritiranjan Das) #3

Thanks. It resolved the issue.


(Jay Pfaffman) #4

If you’re not receiving mail, then mail is not correctly configured.

You seem to have solved your account creation problem, but the recommended way to create an admin account and password is

. /launcher enter app
rails c
rake admin:create

That will allow you to

  • create an account
  • change an account password
  • assign admin to an account