无法使用入口点运行docker容器

时间:2017-10-04 12:12:02

标签: asp.net docker .net-core docker-compose microservices

我能够成功构建并运行此docker容器,但内部的asp.net核心应用程序/微服务无法运行并退出而不会出现任何错误。

这是docker容器的日志。

C:\Work\FloAppCore\Docker-Compose>docker-compose --verbose up -d --build
compose.config.config.find: Using configuration files: .\docker-compose.yml
docker.auth.find_config_file: Trying paths: ['C:\\Users\\flo-engineer-7\\.docker\\config.json', 'C:\\Users\\flo-engineer-7\\.dockercfg']
docker.auth.find_config_file: No config file found
compose.cli.command.get_client: docker-compose version 1.16.1, build 6d1ac219
docker-py version: 2.5.1
CPython version: 2.7.13
OpenSSL version: OpenSSL 1.0.2j  26 Sep 2016
compose.cli.command.get_client: Docker base_url: http+docker://localnpipe
compose.cli.command.get_client: Docker version: KernelVersion=10.0 14393 (14393.1593.amd64fre.rs1_release.170731-1934), Arch=amd64, BuildTime=2017-09-21T23:10:04.946582391+00:00, ApiVersion=1.30, Version=17.06.2-ee-3, MinAPIVersion=1.24, GitCommit=915cbaa, Os=windows, GoVersion=go1.8.3
compose.cli.verbose_proxy.proxy_callable: docker info <- ()
compose.cli.verbose_proxy.proxy_callable: docker info -> {u'Architecture': u'x86_64',
 u'BridgeNfIp6tables': True,
 u'BridgeNfIptables': True,
 u'CPUSet': False,
 u'CPUShares': False,
 u'CgroupDriver': u'',
 u'ClusterAdvertise': u'',
 u'ClusterStore': u'',
 u'ContainerdCommit': {u'Expected': u'', u'ID': u''},
 u'Containers': 5,
...
compose.cli.verbose_proxy.proxy_callable: docker inspect_network <- (u'dockercompose_default')
compose.network.ensure: Creating network "dockercompose_default" with the default driver
compose.cli.verbose_proxy.proxy_callable: docker create_network <- (name=u'dockercompose_default', enable_ipv6=False, ipam=None, labels={u'com.docker.compose.project': u'dockercompose', u'com.docker.compose.network': u'default'}, driver=None, attachable=True, internal=False, options=None)
compose.cli.verbose_proxy.proxy_callable: docker create_network -> {u'Id': u'6765f470d5c0ad7efb38a122e11e1c8ca4f76ceeefe5ad9d3c4e3463b62e05ee',
 u'Warning': u''}
compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=False, filters={u'label': [u'com.docker.compose.project=dockercompose', u'com.docker.compose.oneoff=False']})
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items)
compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={u'label': [u'com.docker.compose.project=dockercompose', u'com.docker.compose.service=flousermanagement', u'com.docker.compose.oneoff=False']})
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items)
compose.service.build: Building flousermanagement
compose.cli.verbose_proxy.proxy_callable: docker build <- (nocache=False, pull=False, cache_from=None, target=None, stream=True, labels=None, network_mode=None, tag=u'dockercompose_flousermanagement', buildargs={}, forcerm=False, rm=True, path=u'C:\\Work\\FloAppCore\\FloUserManagement\\bin\\Debug\\netcoreapp2.0\\publish', dockerfile='Dockerfile')
docker.api.build._set_auth_headers: Looking for auth config
docker.api.build._set_auth_headers: No auth config in memory - loading from filesystem
docker.auth.find_config_file: Trying paths: ['C:\\Users\\flo-engineer-7\\.docker\\config.json', 'C:\\Users\\flo-engineer-7\\.dockercfg']
docker.auth.find_config_file: No config file found
docker.api.build._set_auth_headers: No auth config found
compose.cli.verbose_proxy.proxy_callable: docker build -> <generator object _stream_helper at 0x0000000003D75318>
Step 1/8 : FROM microsoft/dotnet:2.0.0-sdk-nanoserver
 ---> b21d0dcac3da
Step 2/8 : ENTRYPOINT dotnet FloUserManagement.dll
 ---> Using cache
 ---> 045d2ee6931f
Step 3/8 : ARG source=.
 ---> Using cache
 ---> 730970d5a20d
Step 4/8 : WORKDIR /floUserManagement
 ---> Using cache
 ---> a49ab14bd6d1
Step 5/8 : ENV ASPNETCORE_URLS http://+:5001
 ---> Using cache
 ---> 53ac819650c8
Step 6/8 : EXPOSE 5001
 ---> Using cache
 ---> 1128b8571494
Step 7/8 : EXPOSE 8080
 ---> Using cache
 ---> bf898070e47c
Step 8/8 : COPY $source .
 ---> Using cache
 ---> 10dca54677f7
Successfully built 10dca54677f7
Successfully tagged dockercompose_flousermanagement:latest
compose.cli.verbose_proxy.proxy_callable: docker close <- ()
compose.cli.verbose_proxy.proxy_callable: docker close -> None
compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={u'label': [u'com.docker.compose.project=dockercompose', u'com.docker.compose.service=flousermanagement', u'com.docker.compose.oneoff=False']})
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items)
compose.parallel.feed_queue: Pending: set([<Service: flousermanagement>])
compose.parallel.feed_queue: Starting producer thread for <Service: flousermanagement>
compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={u'label': [u'com.docker.compose.project=dockercompose', u'com.docker.compose.service=flousermanagement', u'com.docker.compose.oneoff=False']})
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items)
Creating dockercompose_flousermanagement_1 ...
compose.parallel.feed_queue: Pending: set([1])
compose.parallel.feed_queue: Starting producer thread for 1
compose.cli.verbose_proxy.proxy_callable: docker inspect_image <- (u'dockercompose_flousermanagement')
compose.cli.verbose_proxy.proxy_callable: docker inspect_image -> {u'Architecture': u'amd64',
 u'Author': u'',
 u'Comment': u'',
 u'Config': {u'AttachStderr': False,
             u'AttachStdin': False,
             u'AttachStdout': False,
             u'Cmd': None,
             u'Domainname': u'',
             u'Entrypoint': [u'dotnet', u'FloUserManagement.dll'],
             u'Env': [u'DOTNET_SDK_VERSION=2.0.0',
...
compose.cli.verbose_proxy.proxy_callable: docker inspect_image <- (u'dockercompose_flousermanagement')
compose.cli.verbose_proxy.proxy_callable: docker inspect_image -> {u'Architecture': u'amd64',
 u'Author': u'',
 u'Comment': u'',
 u'Config': {u'AttachStderr': False,
             u'AttachStdin': False,
             u'AttachStdout': False,
             u'Cmd': None,
             u'Domainname': u'',
             u'Entrypoint': [u'dotnet', u'FloUserManagement.dll'],
             u'Env': [u'DOTNET_SDK_VERSION=2.0.0',
...
compose.service.build_container_labels: Added config hash: fcbc2b05b3778b56210b9b7eaee882bd94227d1fdebf4936737d580c94631241
compose.cli.verbose_proxy.proxy_callable: docker create_host_config <- (device_read_iops=None, mem_swappiness=None, links=[], oom_score_adj=None, blkio_weight=None, cpu_count=None, cpuset_cpus=None, dns_search=None, pid_mode=None, init_path=None, log_config={'Type': u'', 'Config': {}}, cpu_quota=None, read_only=None, cpu_percent=None, device_read_bps=None, storage_opt=None, init=None, dns=None, volumes_from=[], ipc_mode=None, mem_reservation=None, security_opt=None, shm_size=None, device_write_iops=None, dns_opt=None, cgroup_parent=None, group_add=None, network_mode=u'dockercompose_default', blkio_weight_device=None, userns_mode=None, tmpfs=None, nano_cpus=None, port_bindings={'8080/tcp': ['8080'], '5001/tcp': ['5001']}, isolation=None, memswap_limit=None, restart_policy=None, volume_driver=None, devices=None, extra_hosts=None, binds=[u'C:\\Work\\FloAppCore\\FloUserManagement\\bin\\Debug\\netcoreapp2.0\\publish\\data:c:\\floUserManagement\\data:rw'], sysctls=None, pids_limit=None, device_write_bps=None, cap_add=None, mem_limit=None, cap_drop=None, privileged=False, ulimits=None, cpu_shares=None)
compose.cli.verbose_proxy.proxy_callable: docker create_host_config -> {'Binds': [u'C:\\Work\\FloAppCore\\FloUserManagement\\bin\\Debug\\netcoreapp2.0\\publish\\data:c:\\floUserManagement\\data:rw'],
 'Links': [],
 'LogConfig': {'Config': {}, 'Type': u''},
 'NetworkMode': u'dockercompose_default',
 'PortBindings': {'5001/tcp': [{'HostIp': '', 'HostPort': '5001'}],
                  '8080/tcp': [{'HostIp': '', 'HostPort': '8080'}]},
 'VolumesFrom': []}
compose.service.create_container: Creating dockercompose_flousermanagement_1
compose.cli.verbose_proxy.proxy_callable: docker create_container <- (name=u'dockercompose_flousermanagement_1', image=u'dockercompose_flousermanagement', labels={u'com.docker.compose.service': u'flousermanagement', u'com.docker.compose.project': u'dockercompose', u'com.docker.compose.config-hash': 'fcbc2b05b3778b56210b9b7eaee882bd94227d1fdebf4936737d580c94631241', u'com.docker.compose.version': u'1.16.1', u'com.docker.compose.oneoff': u'False', u'com.docker.compose.container-number': '1'}, host_config={'NetworkMode': u'dockercompose_default', 'Links': [], 'PortBindings': {'8080/tcp': [{'HostPort': '8080', 'HostIp': ''}], '5001/tcp': [{'HostPort': '5001', 'HostIp': ''}]}, 'Binds': [u'C:\\Work\\FloAppCore\\FloUserManagement\\bin\\Debug\\netcoreapp2.0\\publish\\data:c:\\floUserManagement\\data:rw'], 'LogConfig': {'Type': u'', 'Config': {}}, 'VolumesFrom': []}, environment=[], volumes={u'c:\\floUserManagement\\data': {}}, detach=True, ports=[(u'5001', u'tcp'), (u'8080', u'tcp')], networking_config={u'EndpointsConfig': {u'dockercompose_default': {u'IPAMConfig': {}, u'Aliases': ['flousermanagement']}}})
compose.cli.verbose_proxy.proxy_callable: docker create_container -> {u'Id': u'09deadd3680a9376ab1771c3034be403b814eeb93adf642b14ee26d2e5a60f39',
 u'Warnings': []}
compose.cli.verbose_proxy.proxy_callable: docker inspect_container <- (u'09deadd3680a9376ab1771c3034be403b814eeb93adf642b14ee26d2e5a60f39')
compose.cli.verbose_proxy.proxy_callable: docker inspect_container -> {u'AppArmorProfile': u'',
 u'Args': [u'FloUserManagement.dll'],
 u'Config': {u'AttachStderr': False,
             u'AttachStdin': False,
             u'AttachStdout': False,
             u'Cmd': None,
             u'Domainname': u'',
             u'Entrypoint': [u'dotnet', u'FloUserManagement.dll'],
             u'Env': [u'DOTNET_SDK_VERSION=2.0.0',
                      u'DOTNET_SDK_DOWNLOAD_URL=https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.0.0/dotnet-sdk-2.0.0-win-x64.zip',
...
compose.cli.verbose_proxy.proxy_callable: docker disconnect_container_from_network <- (u'09deadd3680a9376ab1771c3034be403b814eeb93adf642b14ee26d2e5a60f39', u'dockercompose_default')
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.cli.verbose_proxy.proxy_callable: docker disconnect_container_from_network -> None
compose.cli.verbose_proxy.proxy_callable: docker connect_container_to_network <- (u'09deadd3680a9376ab1771c3034be403b814eeb93adf642b14ee26d2e5a60f39', u'dockercompose_default', ipv4_address=None, link_local_ips=None, ipv6_address=None, links=[], aliases=['flousermanagement', u'09deadd3680a'])
compose.cli.verbose_proxy.proxy_callable: docker connect_container_to_network -> None
compose.cli.verbose_proxy.proxy_callable: docker start <- (u'09deadd3680a9376ab1771c3034be403b814eeb93adf642b14ee26d2e5a60f39')
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.parallel.feed_queue: Pending: set([])
compose.cli.verbose_proxy.proxy_callable: docker start -> None
Creating dockercompose_flousermanagement_1 ... done
compose.parallel.feed_queue: Pending: set([])
compose.parallel.parallel_execute_iter: Finished processing: <Service: flousermanagement>
compose.parallel.feed_queue: Pending: set([])

这是docker文件。

Dockerfile ==&gt;

   FROM microsoft/dotnet:2.0.0-sdk-nanoserver
   ENTRYPOINT ["dotnet", "FloUserManagement.dll"]
   ARG source=.
   WORKDIR /floUserManagement
   ENV ASPNETCORE_URLS http://+:5001
   EXPOSE 5001
   EXPOSE 8080
   COPY $source .

Dockercompose ==&gt;

   version: '2.1'
   services:
          flousermanagement:
          build: 
                context: ../FloUserManagement/bin/Debug/netcoreapp2.0/publish
                dockerfile: Dockerfile
                ports:
                     - "5001:5001"
                     - "8080:8080"
              volumes:
                   -../FloUserManagement/bin/Debug/netcoreapp2.0/publish/data:c:\floUserManagement\data   

docker-compose命令退出asp.net代码,没有任何错误代码。那么如何调试此问题或者可能是解决此问题的可能解决方案。 我已经清楚地将dockerfile中的入口点定义为“ENTRYPOINT [”dotnet“,”FloUserManagement.dll“]”但它无法在容器内执行代码/微服务。

1 个答案:

答案 0 :(得分:1)

@tarun lalwani,感谢您的更新。我删除了-d --build选项,并且docker服务成功运行。