I'm quite new to Linux OS's so hope this isn't a stupid question!!
Software:
Windows 10 Pro
Docker for Windows (1.13.0-beta38 (9805))
SQL Server Management Studio v17.0 RC1
Issue: I'm trying to connect to my SQL Server Linux container using SSMS. It's not worked, so looking over the documentation it seems you need SQL Server Tools installed (bottom of page) on top of of the SQL Server Linux image.
I followed these instructions to install SQL Server Tools on Ubuntu (base image of SQL Server Linux Image)
Error:
bash: curl: command not found
Steps to reproduce error:
- Pull latest
microsoft/sql-server-linux
image - Run according to instructions:
docker run -e 'ACCEPT_EULA=Y' -e SA_PASSWORD=yourStrong(!)Password' -p 1433:1433 -d microsoft/mssql-server-linux
- Attach to container using:
docker exec -it <container_id> /bin/bash
- Attempt to import public repository GPG keys:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
Thing's I've tried:
- I've tried running
apt-get install curl
but all i get isE: Unable to locate package curl
- Googling - to no end
First edit - Connecting via SSMS
I've tried connecting to the container from SSMS using the following server names (I am using SQL authentication with the credentials specified during the docker run
command):
- localhost:1433
- localhost\[container_name]
- [container_ip_address]:1433
Solution (kind of)
OK so i got this working. But I'm not 100% sure what did the trick.
I used localhost
as the server name (defaults to port 1433)
I also mounted a volume to the container as part of my docker-compose.yml file:
volumes:
- C:\local\volume\path:/var/opt/mssql
SQL Server Linux Logs
Configuring Microsoft(R) SQL Server(R)...
Configuration complete.
This is an evaluation version. There are [141] days left in the evaluation period.
2017-01-23 08:14:10.39 Server Microsoft SQL Server vNext (CTP1.1) - 14.0.100.187 (X64)
Dec 10 2016 02:51:11
Copyright (C) 2016 Microsoft Corporation. All rights reserved.
on Linux (Ubuntu 16.04.1 LTS)
2017-01-23 08:14:10.40 Server UTC adjustment: 0:00
2017-01-23 08:14:10.41 Server (c) Microsoft Corporation.
2017-01-23 08:14:10.41 Server All rights reserved.
2017-01-23 08:14:10.42 Server Server process ID is 4116.
2017-01-23 08:14:10.42 Server Logging SQL Server messages in file 'C:\var\opt\mssql\log\errorlog'.
2017-01-23 08:14:10.42 Server Registry startup parameters:
-d C:\var\opt\mssql\data\master.mdf
-l C:\var\opt\mssql\data\mastlog.ldf
-e C:\var\opt\mssql\log\errorlog
2017-01-23 08:14:10.44 Server SQL Server detected 1 sockets with 2 cores per socket and 2 logical processors per socket, 2 total logical processors; using 2 logical
processors based on SQL Server licensing. This is an informational message; no user action is required.
2017-01-23 08:14:10.45 Server SQL Server is starting at normal priority base (=7). This is an informational message only. No user action is required.
2017-01-23 08:14:10.46 Server Detected 3143 MB of RAM. This is an informational message; no user action is required.
2017-01-23 08:14:10.46 Server Using conventional memory in the memory manager.
2017-01-23 08:14:10.54 Server Default collation: SQL_Latin1_General_CP1_CI_AS (us_english 1033)
2017-01-23 08:14:10.68 Server Buffer pool extension is already disabled. No action is necessary.
2017-01-23 08:14:10.79 Server InitializeExternalUserGroupSid failed. Implied authentication will be disabled.
2017-01-23 08:14:10.79 Server Implied authentication manager initialization failed. Implied authentication will be disabled.
2017-01-23 08:14:10.84 Server The maximum number of dedicated administrator connections for this instance is '1'
2017-01-23 08:14:10.84 Server Node configuration: node 0: CPU mask: 0x0000000000000003:0 Active CPU mask: 0x0000000000000003:0. This message provides a description o
f the NUMA configuration for this computer. This is an informational message only. No user action is required.
2017-01-23 08:14:10.86 Server Using dynamic lock allocation. Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node. This is an informational m
essage only. No user action is required.
2017-01-23 08:14:10.87 Server Database Instant File Initialization: enabled. For security and performance considerations see the topic 'Database Instant File Initial
ization' in SQL Server Books Online. This is an informational message only. No user action is required.
2017-01-23 08:14:10.89 Server Query Store settings initialized with enabled = 1,
2017-01-23 08:14:10.89 spid5s Starting up database 'master'.
2017-01-23 08:14:10.91 Server In-Memory OLTP initialized on lowend machine.
2017-01-23 08:14:10.98 Server Software Usage Metrics is disabled.
2017-01-23 08:14:11.04 spid5s 8 transactions rolled forward in database 'master' (1:0). This is an informational message only. No user action is required.
2017-01-23 08:14:11.07 spid5s 0 transactions rolled back in database 'master' (1:0). This is an informational message only. No user action is required.
2017-01-23 08:14:11.08 spid5s Recovery is writing a checkpoint in database 'master' (1). This is an informational message only. No user action is required.
2017-01-23 08:14:11.13 spid5s Buffer pool extension is already disabled. No action is necessary.
2017-01-23 08:14:11.13 spid5s Resource governor reconfiguration succeeded.
2017-01-23 08:14:11.13 spid5s SQL Server Audit is starting the audits. This is an informational message. No user action is required.
2017-01-23 08:14:11.14 spid5s SQL Server Audit has started the audits. This is an informational message. No user action is required.
2017-01-23 08:14:11.18 spid5s SQL Trace ID 1 was started by login "sa".
2017-01-23 08:14:11.20 spid5s Server name is '65507453cf5a'. This is an informational message only. No user action is required.
2017-01-23 08:14:11.23 spid17s Password policy update was successful.
2017-01-23 08:14:11.24 spid5s Starting up database 'msdb'.
2017-01-23 08:14:11.24 spid6s Starting up database 'mssqlsystemresource'.
2017-01-23 08:14:11.26 spid6s The resource database build version is 14.00.100. This is an informational message only. No user action is required.
2017-01-23 08:14:11.29 spid6s Starting up database 'model'.
2017-01-23 08:14:11.61 spid5s 7 transactions rolled forward in database 'msdb' (4:0). This is an informational message only. No user action is required.
2017-01-23 08:14:11.61 spid6s 7 transactions rolled forward in database 'model' (3:0). This is an informational message only. No user action is required.
2017-01-23 08:14:11.63 spid6s 0 transactions rolled back in database 'model' (3:0). This is an informational message only. No user action is required.
2017-01-23 08:14:11.63 spid5s 0 transactions rolled back in database 'msdb' (4:0). This is an informational message only. No user action is required.
2017-01-23 08:14:11.63 spid6s Recovery is writing a checkpoint in database 'model' (3). This is an informational message only. No user action is required.
2017-01-23 08:14:11.64 spid5s Recovery is writing a checkpoint in database 'msdb' (4). This is an informational message only. No user action is required.
2017-01-23 08:14:11.75 spid6s Polybase feature disabled.
2017-01-23 08:14:11.76 spid6s Clearing tempdb database.
2017-01-23 08:14:12.10 spid17s A self-generated certificate was successfully loaded for encryption.
2017-01-23 08:14:12.11 spid17s Server is listening on [ 0.0.0.0 <ipv4> 1433].
2017-01-23 08:14:12.13 Server Server is listening on [ 127.0.0.1 <ipv4> 1434].
2017-01-23 08:14:12.13 Server Dedicated admin connection support was established for listening locally on port 1434.
2017-01-23 08:14:12.14 spid17s SQL Server is now ready for client connections. This is an informational message; no user action is required.
2017-01-23 08:14:12.40 spid6s Starting up database 'tempdb'.
2017-01-23 08:14:12.68 spid6s The tempdb database has 1 data file(s).
2017-01-23 08:14:12.69 spid20s The Service Broker endpoint is in disabled or stopped state.
2017-01-23 08:14:12.70 spid20s The Database Mirroring endpoint is in disabled or stopped state.
2017-01-23 08:14:12.71 spid20s Service Broker manager has started.
2017-01-23 08:14:12.75 spid5s Recovery is complete. This is an informational message only. No user action is required.
2017-01-23 08:14:15.89 spid29s The activated proc '[dbo].[sp_syspolicy_events_reader]' running on queue 'msdb.dbo.syspolicy_event_queue' output the following: 'Trans
action (Process ID 29) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.'
2017-01-23 08:19:14.95 spid51 Using 'dbghelp.dll' version '4.0.5'
2017-01-23 08:19:18.62 spid51 Attempting to load library 'xplog70.dll' into memory. This is an informational message only. No user action is required.
2017-01-23 08:19:18.65 spid51 Using 'xplog70.dll' version '2016.140.100' to execute extended stored procedure 'xp_msver'. This is an informational message only; no u
ser action is required.
I had the same issue and the comment from Ed Harper resolved my issue:
The server name field in SMSS required a format of locahost,[dockerport]. So in my case I needed:
localhost,32768