0

Hi guys I have issue with docker-compose and postgres image. I am trying to use docker-compose(I am new to docker) for my API and postgres database.

Her is how my docker compose file looks:

version: '3.9'


services:
    web:
        container_name: sourceryapi
        build: .
        ports:
            - "8000:80"
        depends_on:
            database:
                    condition: service_healthy
    database:
        container_name: postgres
        image: postgres:latest
        ports: 
            - "5433:5432"
        environment:
            - POSTGRES_PASSWORD=admin
        volumes:
            - dbdata:/var/lib/postgresql/data
            
        healthcheck:
            test: ["CMD-SHELL", "pg_isready -U postgres"]
            interval: 10s
            timeout: 25s
            retries: 5
volumes:
  dbdata:

And I am getting these output after docker-compose up:

Creating volume "postgres_volume_name" with default driver
Creating postgres ... 

Creating postgres ... done

Creating sourceryapi ... 

Creating sourceryapi ... done

Attaching to postgres, sourceryapi
�[36mpostgres    |�[0m The files belonging to this database system will be owned by user "postgres".
�[36mpostgres    |�[0m This user must also own the server process.
�[36mpostgres    |�[0m 
�[36mpostgres    |�[0m The database cluster will be initialized with locale "en_US.utf8".
�[36mpostgres    |�[0m The default database encoding has accordingly been set to "UTF8".
�[36mpostgres    |�[0m The default text search configuration will be set to "english".
�[36mpostgres    |�[0m 
�[36mpostgres    |�[0m Data page checksums are disabled.
�[36mpostgres    |�[0m 
�[36mpostgres    |�[0m fixing permissions on existing directory /var/lib/postgresql/data ... ok
�[36mpostgres    |�[0m creating subdirectories ... ok
�[36mpostgres    |�[0m selecting dynamic shared memory implementation ... posix
�[36mpostgres    |�[0m selecting default max_connections ... 100
�[36mpostgres    |�[0m selecting default shared_buffers ... 128MB
�[36mpostgres    |�[0m selecting default time zone ... Etc/UTC
�[36mpostgres    |�[0m creating configuration files ... ok
�[36mpostgres    **|�[0m running bootstrap script ... 2022-04-29 08:25:58.163 UTC [43] LOG:  could not link file "pg_wal/xlogtemp.43" to "pg_wal/000000010000000000000001": Permission denied
�[36mpostgres    |�[0m 2022-04-29 08:25:58.167 UTC [43] FATAL:  could not open file "pg_wal/000000010000000000000001": No such file or directory**
�[36mpostgres    |�[0m child process exited with exit code 1
�[36mpostgres    |�[0m initdb: removing contents of data directory "/var/lib/postgresql/data"
�[36mpostgres exited with code 4294967295
�[0m�[33msourceryapi |�[0m Unhandled exception. System.IO.FileNotFoundException: Error reading the C:\app\ directory.

�[33msourceryapi |�[0m    at System.IO.FileSystemWatcher.StartRaisingEvents()

�[33msourceryapi |�[0m    at System.IO.FileSystemWatcher.StartRaisingEventsIfNotDisposed()

�[33msourceryapi |�[0m    at System.IO.FileSystemWatcher.set_EnableRaisingEvents(Boolean value)

�[33msourceryapi |�[0m    at Microsoft.Extensions.FileProviders.Physical.PhysicalFilesWatcher.TryEnableFileSystemWatcher()

�[33msourceryapi |�[0m    at Microsoft.Extensions.FileProviders.Physical.PhysicalFilesWatcher.CreateFileChangeToken(String filter)

�[33msourceryapi |�[0m    at Microsoft.Extensions.FileProviders.PhysicalFileProvider.Watch(String filter)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Configuration.FileConfigurationProvider.<.ctor>b__1_0()

�[33msourceryapi |�[0m    at Microsoft.Extensions.Primitives.ChangeToken.OnChange(Func`1 changeTokenProducer, Action changeTokenConsumer)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Configuration.FileConfigurationProvider..ctor(FileConfigurationSource source)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Configuration.Json.JsonConfigurationSource.Build(IConfigurationBuilder builder)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Configuration.ConfigurationManager.AddSource(IConfigurationSource source)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Configuration.ConfigurationManager.Microsoft.Extensions.Configuration.IConfigurationBuilder.Add(IConfigurationSource source)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Configuration.ConfigurationExtensions.Add[TSource](IConfigurationBuilder builder, Action`1 configureSource)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Configuration.JsonConfigurationExtensions.AddJsonFile(IConfigurationBuilder builder, IFileProvider provider, String path, Boolean optional, Boolean reloadOnChange)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Configuration.JsonConfigurationExtensions.AddJsonFile(IConfigurationBuilder builder, String path, Boolean optional, Boolean reloadOnChange)

�[33msourceryapi |�[0m    at Microsoft.Extensions.Hosting.HostingHostBuilderExtensions.<>c__DisplayClass11_0.<ConfigureDefaults>b__1(HostBuilderContext hostingContext, IConfigurationBuilder config)

�[33msourceryapi |�[0m    at Microsoft.AspNetCore.Hosting.BootstrapHostBuilder.RunDefaultCallbacks(ConfigurationManager configuration, HostBuilder innerBuilder)

�[33msourceryapi |�[0m    at Microsoft.AspNetCore.Builder.WebApplicationBuilder..ctor(WebApplicationOptions options, Action`1 configureDefaults)

�[33msourceryapi |�[0m    at Microsoft.AspNetCore.Builder.WebApplication.CreateBuilder(String[] args)

�[33msourceryapi |�[0m    at Program.<Main>$(String[] args) in C:\source\Program.cs:line 8
�[33msourceryapi exited with code 3762504530
�[0m

Seriously it is frustrating, I cannot find any solution to this...maybe you can help?

1 Answers1

1

Turned out that switching docker from Windows Containers to Lunux Containers solved the issue.