# Is setting up elk stack on docker intentionaly this complicated?

**URL:** <https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622>\
**Category:** Elasticsearch\
**Tags:** docker\
**Created:** [April 1, 2025, 8:30am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622 "2025-04-01T08:30:56Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![batttererere](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/batttererere/32/139812_2.png) [@batttererere](https://discuss.elastic.co/u/batttererere)\
**Post date:** [April 1, 2025, 8:30am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/1 "2025-04-01T08:30:56Z")

</div>

I've been dealing with this for a couple hours now, followed half a dozen tutorials

i am not a noob, i've set up a thousand servers, i run my own stack at home with a dozen containers.

but this? impossible.

does anyone have a minimal viable configuration to run this on my own server to analyze my docker container logs ?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [April 1, 2025, 10:04am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/2 "2025-04-01T10:04:04Z")

</div>

Welcome!

What did you try so far?  
Did you successfully started Elasticsearch and Kibana so far?

---

<div class="post-metadata">

**Author:** ![batttererere](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/batttererere/32/139812_2.png) [@batttererere](https://discuss.elastic.co/u/batttererere)\
**Post date:** [April 1, 2025, 10:28am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/3 "2025-04-01T10:28:32Z")

</div>

cant even paste the link to the tutorials

i gave up

forget it

---

<div class="post-metadata">

**Author:** ![batttererere](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/batttererere/32/139812_2.png) [@batttererere](https://discuss.elastic.co/u/batttererere)\
**Post date:** [April 1, 2025, 10:29am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/4 "2025-04-01T10:29:16Z")

</div>

i imagine this is intentional to try users to go get your cloud subscription

i dont see any other reason

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [April 1, 2025, 10:48am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/5 "2025-04-01T10:48:22Z")

</div>

It's hard to help if you don't tell what the problem is.

> i imagine this is intentional to try users to go get your cloud subscription

No. It's not. Even if you run on cloud, I will ask the same questions. What is your current status? Do you have an Elasticsearch / Kibana instance running yet?

Anyway, in case you did not start yet successfully your Elastic cluster, here is [a simple guide](https://www.elastic.co/guide/en/elasticsearch/reference/current/run-elasticsearch-locally.html) which tells you to run first:

```auto
curl -fsSL https://elastic.co/start-local | sh

```

Not sure if you did that yet or no...

---

<div class="post-metadata">

**Author:** ![batttererere](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/batttererere/32/139812_2.png) [@batttererere](https://discuss.elastic.co/u/batttererere)\
**Post date:** [April 1, 2025, 11:29am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/6 "2025-04-01T11:29:48Z")

</div>

this doesn't even give you docker-compose file

i like my volumes in the same folder, this sets them globally

i followed the "Get starting guide" on this same website where there is a link to github repo with docker-compose file and logstash config file

---

<div class="post-metadata">

**Author:** ![batttererere](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/batttererere/32/139812_2.png) [@batttererere](https://discuss.elastic.co/u/batttererere)\
**Post date:** [April 1, 2025, 11:31am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/7 "2025-04-01T11:31:05Z")

</div>

i ran your script, containers are running but it's unaccessible on localhost port 5601

---

<div class="post-metadata">

**Author:** ![batttererere](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/batttererere/32/139812_2.png) [@batttererere](https://discuss.elastic.co/u/batttererere)\
**Post date:** [April 1, 2025, 11:49am UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/8 "2025-04-01T11:49:20Z")

</div>

with a few tweaks i got it running but it wont let me login

## You do not have permission to access the requested page

Either go back to the previous page or log in as a different user.

i've used u: kibana\_system and pass is in .env. there is no other username variable in env nor docker compose ...

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [April 1, 2025, 12:13pm UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/9 "2025-04-01T12:13:45Z")

</div>

The password is printed when you start the script.

But if you want a finer control on everything, you can follow the installation guide from [Install Elasticsearch with Docker | Elasticsearch Guide [8.17] | Elastic](https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html#docker-compose-file)

---

<div class="post-metadata">

**Author:** ![batttererere](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/batttererere/32/139812_2.png) [@batttererere](https://discuss.elastic.co/u/batttererere)\
**Post date:** [April 1, 2025, 12:16pm UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/10 "2025-04-01T12:16:47Z")

</div>

see, needlessly complicated ... you close shell too soon, and it's gone, start from scratch.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [April 1, 2025, 12:25pm UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/11 "2025-04-01T12:25:25Z")

</div>

Do you want to run it for production? For test?

If the later, then I personally think that running `curl -fsSL https://elastic.co/start-local | sh` is not that complicated. It starts one elasticsearch cluster, one kibana instance, and prints an API Key and a password.

 ![docker-start](https://us1.discourse-cdn.com/elastic/original/3X/4/1/416dfdb850a8268c8162e1c1aab0752741572a2a.jpeg)

And then, open [http://localhost:5601](http://localhost:5601)

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/2/4/247ac959aac72001c069cf6b7bb676e68938db44.png)

Gives:

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/f/1/f1e14e3d4e6ffb37136540072c34cbcddf2499d6.png)

---

<div class="post-metadata">

**Author:** ![batttererere](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/batttererere/32/139812_2.png) [@batttererere](https://discuss.elastic.co/u/batttererere)\
**Post date:** [April 1, 2025, 12:42pm UTC](https://discuss.elastic.co/t/is-setting-up-elk-stack-on-docker-intentionaly-this-complicated/376622/12 "2025-04-01T12:42:41Z")

</div>

yes thanks i'm in now

they could've put username and password in env since it already exists

i want to run it on my home server where i keep homeassistant, nextcloud, pihole, mailserver and a couple others

i would like to monitor logs from my docker containers

so i guess production

i also disabled premium features, reverted license to basic in settings
